; Listing generated by Microsoft (R) Optimizing Compiler Version 18.00.21005.1 

include listing.inc

INCLUDELIB LIBCMTD
INCLUDELIB OLDNAMES

PUBLIC	hFileSystem
_BSS	SEGMENT
hFileSystem DQ	01H DUP (?)
_BSS	ENDS
_DATA	SEGMENT
$SG85488 DB	'SOFTWARE\Classes\CLSID\{a37849bb-d232-40fa-ac4f-6db29a69'
	DB	'd7cc}\InProcServer32', 00H
_DATA	ENDS
PUBLIC	l_WriteFileRegistry
PUBLIC	l_ReadFileRegistry
PUBLIC	l_OpenFileSystem
EXTRN	__imp_RegOpenCurrentUser:PROC
EXTRN	_RTC_CheckStackVars:PROC
EXTRN	_RTC_InitBase:PROC
EXTRN	_RTC_Shutdown:PROC
EXTRN	__GSHandlerCheck:PROC
EXTRN	__security_check_cookie:PROC
EXTRN	__security_cookie:QWORD
pdata	SEGMENT
$pdata$l_WriteFileRegistry DD imagerel $LN3
	DD	imagerel $LN3+18
	DD	imagerel $unwind$l_WriteFileRegistry
$pdata$l_ReadFileRegistry DD imagerel $LN3
	DD	imagerel $LN3+12
	DD	imagerel $unwind$l_ReadFileRegistry
$pdata$l_OpenFileSystem DD imagerel $LN6
	DD	imagerel $LN6+136
	DD	imagerel $unwind$l_OpenFileSystem
pdata	ENDS
;	COMDAT rtc$TMZ
rtc$TMZ	SEGMENT
_RTC_Shutdown.rtc$TMZ DQ FLAT:_RTC_Shutdown
rtc$TMZ	ENDS
;	COMDAT rtc$IMZ
rtc$IMZ	SEGMENT
_RTC_InitBase.rtc$IMZ DQ FLAT:_RTC_InitBase
rtc$IMZ	ENDS
CONST	SEGMENT
l_OpenFileSystem$rtcName$0 DB 068H
	DB	048H
	DB	04bH
	DB	043H
	DB	055H
	DB	00H
	ORG $+10
l_OpenFileSystem$rtcVarDesc DD 028H
	DD	08H
	DQ	FLAT:l_OpenFileSystem$rtcName$0
	ORG $+48
l_OpenFileSystem$rtcFrameData DD 01H
	DD	00H
	DQ	FLAT:l_OpenFileSystem$rtcVarDesc
CONST	ENDS
xdata	SEGMENT
$unwind$l_WriteFileRegistry DD 011001H
	DD	07010H
$unwind$l_ReadFileRegistry DD 010a01H
	DD	0700aH
$unwind$l_OpenFileSystem DD 022419H
	DD	070029206H
	DD	imagerel __GSHandlerCheck
	DD	048H
xdata	ENDS
; Function compile flags: /Odtp /RTCsu
_TEXT	SEGMENT
hHKCU$4 = 40
lResult$5 = 52
szSubkey$6 = 56
__$ArrayPad$ = 72
l_OpenFileSystem PROC
; File c:\users\unknown\stuff\lotus\64bit\actproxy\actproxy\storage_registry.c
; Line 20
$LN6:
	push	rdi
	sub	rsp, 80					; 00000050H
	mov	rdi, rsp
	mov	ecx, 20
	mov	eax, -858993460				; ccccccccH
	rep stosd
	mov	rax, QWORD PTR __security_cookie
	xor	rax, rsp
	mov	QWORD PTR __$ArrayPad$[rsp], rax
; Line 21
	cmp	QWORD PTR hFileSystem, 0
	je	SHORT $LN3@l_OpenFile
; Line 22
	mov	eax, 1
	jmp	SHORT $LN4@l_OpenFile
; Line 23
	jmp	SHORT $LN2@l_OpenFile
$LN3@l_OpenFile:
; Line 26
	lea	rdx, QWORD PTR hHKCU$4[rsp]
	mov	ecx, 983103				; 000f003fH
	call	QWORD PTR __imp_RegOpenCurrentUser
	mov	DWORD PTR lResult$5[rsp], eax
; Line 27
	lea	rax, OFFSET FLAT:$SG85488
	mov	QWORD PTR szSubkey$6[rsp], rax
; Line 29
	cmp	DWORD PTR lResult$5[rsp], 0
	je	SHORT $LN1@l_OpenFile
; Line 30
	xor	eax, eax
$LN1@l_OpenFile:
$LN2@l_OpenFile:
$LN4@l_OpenFile:
; Line 36
	mov	rdi, rax
	mov	rcx, rsp
	lea	rdx, OFFSET FLAT:l_OpenFileSystem$rtcFrameData
	call	_RTC_CheckStackVars
	mov	rax, rdi
	mov	rcx, QWORD PTR __$ArrayPad$[rsp]
	xor	rcx, rsp
	call	__security_check_cookie
	add	rsp, 80					; 00000050H
	pop	rdi
	ret	0
l_OpenFileSystem ENDP
_TEXT	ENDS
; Function compile flags: /Odtp /RTCsu
_TEXT	SEGMENT
szFileName$ = 16
dwSize$ = 24
l_ReadFileRegistry PROC
; File c:\users\unknown\stuff\lotus\64bit\actproxy\actproxy\storage_registry.c
; Line 14
$LN3:
	mov	DWORD PTR [rsp+16], edx
	mov	QWORD PTR [rsp+8], rcx
	push	rdi
; Line 17
	pop	rdi
	ret	0
l_ReadFileRegistry ENDP
_TEXT	ENDS
; Function compile flags: /Odtp /RTCsu
_TEXT	SEGMENT
szFileName$ = 16
lpBuffer$ = 24
dwSize$ = 32
l_WriteFileRegistry PROC
; File c:\users\unknown\stuff\lotus\64bit\actproxy\actproxy\storage_registry.c
; Line 8
$LN3:
	mov	DWORD PTR [rsp+24], r8d
	mov	QWORD PTR [rsp+16], rdx
	mov	QWORD PTR [rsp+8], rcx
	push	rdi
; Line 10
	pop	rdi
	ret	0
l_WriteFileRegistry ENDP
_TEXT	ENDS
END
