Function at 0x4133a0
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x41f7b7
push eax
mov dword fs:[0], esp
sub esp, 0x134
push ebx
push esi
push edi
mov esi, ecx
call fcn.004121c0
mov dword [esi + 0x1bc], 1
mov ecx, dword [esi + 0x1c]
mov ax, word [esi + 0x1c]
mov edx, dword [esi + 0xe0]
shr ecx, 0x10
push eax
push ecx
push edx
mov ecx, esi
call fcn.00411df0
cmp eax, 0xffffffff
mov dword [esi + 0x18], eax
jne 0x41346b
push 0
mov ecx, esi
call fcn.00403d60
test al, al
je 0x413406
push 0x10
call dword [sym.imp.USER32.dll_MessageBeep]
push 0x5273
mov ecx, esi
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
mov al, byte [esi + 0x30]
add esp, 8
test al, al
jne 0x41345c
call sub.MFC42.DLL_AfxGetThread
test eax, eax
je 0x413437
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
mov edi, eax
jmp 0x413439
xor edi, edi
push 0x30
push 0x5285
mov ecx, esi
call fcn.00402e90
push eax
push 0x5273
mov ecx, esi
call fcn.00402e90
push eax
mov ecx, edi
call sub.MFC42.DLL_CWnd::MessageBoxA
mov dword [esi + 0x19c], 0xffffffff
jmp 0x414109
push ebp
push 0
push esi
call fcn.00402ed0
add esp, 8
mov ecx, esi
push 0x5208
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 8
lea eax, [esi + 0x6ae]
mov ecx, esi
push 0xffffffffffffffff
push 0
push 0
push eax
push 0x80
push 0
call fcn.00411ef0
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [esi + 0x19c], eax
test eax, eax
jne 0x413e3f
mov ecx, esi
call fcn.00404560
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
mov al, byte [esi + 0x22]
test al, al
je 0x4134ef
mov ecx, esi
call fcn.00404bf0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
jmp 0x413517
mov eax, dword [esi + 0x674]
mov al, byte [eax + 0xf]
test al, 0x80
je 0x413517
and al, 0x60
mov ecx, esi
cmp al, 0x20
je 0x4134da
call fcn.004050d0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
mov ecx, dword [esi + 0x11c]
lea eax, [esi + 0xaae]
shl ecx, 5
mov edx, dword [ecx + 0x4216e8]
and edx, 0x7f8000
cmp edx, 0x1a8000
jb 0x41353f
mov byte [eax], 0x18
jmp 0x413542
mov byte [eax], 3
push 0xffffffffffffffff
push 0
push 0
push eax
push 1
push 1
mov ecx, esi
call fcn.00412050
push 0xffffffffffffffff
push 0
lea ebx, [esi + 0x6ae]
push 0
push ebx
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
push 0xa
call edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0x521b
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
mov eax, dword [esi + 0xf08]
add esp, 8
cmp eax, 1
jge 0x4135a3
mov eax, 1
push 0xffffffffffffffff
push 0xa55a
lea ecx, [esi + 0xf10]
push 0
push ecx
push eax
push 5
mov ecx, esi
call fcn.00412050
push 0x32
call edi
push 0xffffffffffffffff
push 0
push 0
push ebx
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
mov al, byte [esi + 0x6ae]
cmp al, 0xe
jne 0x4135f5
push 0x521c
jmp 0x4135fe
cmp al, 0xf
jne 0x41361e
push 0x521d
mov ecx, esi
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 8
mov dword [esi + 0x19c], 1
jmp 0x413e3f
push 0xa
call edi
lea ebx, [esi + 0xaae]
push 1
push 0
mov ecx, esi
mov byte [ebx], 0
call fcn.00410080
mov ecx, dword [esi + 0x178]
cmp ecx, 0x73
jl 0x41368e
jne 0x41364c
cmp dword [esi + 0x17c], 0xd
jl 0x41368e
cmp ecx, 0x74
jne 0x41365a
cmp dword [esi + 0x17c], 3
jl 0x41368e
mov cl, byte [esi + 0x3f]
test cl, cl
je 0x413679
and eax, 0xfffe00
mov edx, eax
shr edx, 0x10
xor ecx, ecx
mov byte [ebx], dl
mov cl, ah
mov byte [esi + 0xaaf], cl
jmp 0x4136ad
mov cl, byte [esi + 0x62c]
and ecx, 0xfe
shl ecx, 8
cmp eax, ecx
jle 0x4136ad
jmp 0x4136a1
mov edx, dword [esi + 0x11c]
shl edx, 5
mov ecx, dword [edx + 0x4216f4]
cmp eax, ecx
jle 0x4136ad
sub eax, ecx
add eax, 0x1ff
shr eax, 9
mov byte [ebx], al
push 0xffffffffffffffff
push 0xa55a
push 0
push ebx
push 2
push 3
mov ecx, esi
call fcn.00412050
push 0xc8
call edi
test byte [esi + 0x628], 2
je 0x4136eb
mov eax, dword [esi + 0x11c]
shl eax, 5
mov eax, dword [eax + 0x421700]
add eax, 0x1ff
shr eax, 9
jmp 0x413708
mov ecx, dword [esi + 0x11c]
xor edx, edx
mov dl, byte [ebx]
shl ecx, 5
mov eax, dword [ecx + 0x4216f4]
add eax, 0x1ff
shr eax, 9
add eax, edx
lea eax, [eax + eax*4]
push 0
push 0
mov ecx, esi
lea ebx, [eax + eax*4]
call fcn.00403000
xor ebp, ebp
test ebx, ebx
jle 0x41373e
push 0x64
call edi
push ebx
push ebp
mov ecx, esi
call fcn.00403000
mov al, byte [esi + 0x23]
test al, al
je 0x413b49
add ebp, 0x64
cmp ebp, ebx
jl 0x41371f
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
lea ebx, [esi + 0x6af]
lea eax, [esi + 0xeae]
mov ecx, ebx
mov edx, dword [ecx]
mov dword [eax], edx
mov dx, word [ecx + 4]
mov word [eax + 4], dx
mov cl, byte [ecx + 6]
mov byte [eax + 6], cl
mov ecx, esi
call fcn.004084a0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
mov ecx, esi
call fcn.00408500
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x1c]
xor ebp, ebp
sub eax, ecx
mov dword [esp + 0x18], ebp
mov dword [esp + 0x14], eax
sub esp, 8
fild qword [esp + 0x1c]
mov ecx, esi
fmul dword [0x42a8a0]
fstp qword [esp]
push 0x521f
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
mov al, byte [esi + 0x2f]
add esp, 0x10
test al, al
je 0x413856
mov byte [esp + 0x10], 0x26
mov edx, dword [esi + 0x670]
mov eax, dword [esp + 0x10]
push 0xffffffffffffffff
push 0xa55a
add edx, ebp
push ebp
push edx
push 0x40
push eax
mov ecx, esi
call fcn.00412050
push 0x32
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [ebx], 0x54
jne 0x413ca9
mov cl, byte [esp + 0x10]
add ebp, 0x40
and cl, 0xdf
cmp ebp, 0x100
mov byte [esp + 0x10], cl
jl 0x4137eb
push 0
push 1
mov ecx, esi
call fcn.00410080
push 0xa
call edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0x5222
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 8
mov ecx, esi
push 0
push 0
call fcn.00403000
mov bl, byte [esi + 0x27]
mov eax, dword [esi + 0x100]
xor ebp, ebp
neg bl
sbb bl, bl
and bl, 0x80
add bl, 0x22
test eax, eax
mov byte [esp + 0x10], bl
jle 0x413971
sub eax, ebp
mov ecx, 0x10
cmp eax, 0x10
jg 0x4138bf
mov ecx, eax
mov eax, dword [esi + 0x660]
xor edx, edx
add eax, ebp
test ecx, ecx
jle 0x4138d8
cmp byte [eax + edx], 0xff
jne 0x4138d8
inc edx
cmp edx, ecx
jl 0x4138cd
cmp edx, ecx
sete dl
test dl, dl
jne 0x413939
push 0xffffffffffffffff
push 0xa55a
push ebp
push eax
push ecx
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, esi
call fcn.00412050
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0xa
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [esi + 0x6af], 0x54
jne 0x413ca9
jmp 0x41393f
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [esi + 0x100]
mov ecx, esi
push edx
push ebp
call fcn.00403000
mov al, byte [esi + 0x23]
add ebp, 0x10
and bl, 0xdf
test al, al
mov byte [esp + 0x10], bl
je 0x413b49
mov eax, dword [esi + 0x100]
cmp ebp, eax
jl 0x4138b1
mov ebp, dword [esi + 0x66c]
mov al, byte [ebp]
inc ebp
cmp al, 0x5a
jne 0x413a29
mov bl, 0x12
mov cx, word [ebp]
mov al, byte [ebp + 3]
add ebp, 2
xor edx, edx
test al, al
mov al, byte [esi + 0x3f]
mov byte [esp + 0x10], 2
sete dl
test al, dl
je 0x4139a6
mov byte [esp + 0x10], bl
mov al, byte [ebp + 2]
mov edx, dword [esp + 0x10]
add ebp, 2
push 0xffffffffffffffff
push 0xa55a
push ecx
xor cx, cx
inc ebp
mov cl, al
push ebp
push ecx
push edx
mov ecx, esi
mov byte [esp + 0x2c], al
call fcn.00412050
mov eax, dword [esp + 0x14]
push 0x23
and eax, 0xff
add ebp, eax
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [esi + 0x6af], 0x54
jne 0x413ca9
mov al, byte [esi + 0x23]
test al, al
je 0x413b49
mov cl, byte [ebp]
inc ebp
cmp cl, 0x5a
je 0x413985
push 0
push 0
mov ecx, esi
call fcn.00403000
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
call ebx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x18], 0
sub eax, edx
sub esp, 8
mov dword [esp + 0x1c], eax
mov ecx, esi
fild qword [esp + 0x1c]
fmul dword [0x42a8a0]
fstp qword [esp]
push 0x521f
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
mov al, byte [esi + 0x22]
add esp, 0x10
test al, al
jne 0x413e35
mov edx, dword [esi + 0x674]
test byte [edx + 0xf], 0x80
je 0x413e35
push 0xa
call edi
call ebx
push 0x5223
mov ecx, esi
mov ebx, eax
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
mov eax, dword [esi + 0x178]
add esp, 8
cmp eax, 0x73
jne 0x413bc3
cmp dword [esi + 0x17c], 2
jge 0x413bc3
mov byte [esi + 0xaae], 0
mov al, byte [esi + 0xf04]
test al, al
je 0x413b58
mov eax, dword [esi + 0xf0c]
cmp eax, 1
jge 0x413aea
mov eax, 1
push 0xffffffffffffffff
push 0xa55a
lea ecx, [esi + 0x1010]
push 0
push ecx
push eax
push 7
mov ecx, esi
call fcn.00412050
push 0x64
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [esi + 0x6af], 0x54
je 0x413b58
mov dword [esi + 0x19c], 1
jmp 0x413e3f
mov dword [esi + 0x19c], 3
jmp 0x413e3f
push 0xffffffffffffffff
lea eax, [esi + 0xab3]
push 0xa55a
push 0
push eax
push eax
mov ecx, esi
call fcn.004112a0
push eax
push 4
mov ecx, esi
call fcn.00412050
push 0x32
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [esi + 0x6af], 0x54
je 0x413cb8
mov dword [esi + 0x19c], 1
jmp 0x413e3f
push 0xffffffffffffffff
lea eax, [esi + 0xab3]
push 0xa55a
push 0
push eax
push eax
mov ecx, esi
call fcn.004112a0
push eax
push 4
mov ecx, esi
call fcn.00412050
push 0x64
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [esi + 0x6af], 0x54
je 0x413c2a
mov dword [esi + 0x19c], 1
jmp 0x413e3f
mov al, byte [esi + 0xf04]
test al, al
je 0x413cb8
mov eax, dword [esi + 0xf0c]
test eax, eax
je 0x413cb8
mov byte [esi + 0xaae], 0
mov eax, dword [esi + 0xf0c]
cmp eax, 1
jge 0x413c59
mov eax, 1
push 0xffffffffffffffff
push 0xa55a
lea edx, [esi + 0x1010]
push 0
push edx
push eax
push 7
mov ecx, esi
call fcn.00412050
push 0x64
call edi
push 0xffffffffffffffff
push 0
lea eax, [esi + 0x6ae]
push 0
push eax
push 0x80
push 0
mov ecx, esi
call fcn.00411ef0
test eax, eax
mov dword [esi + 0x19c], eax
jne 0x413e3f
cmp byte [esi + 0x6af], 0x54
je 0x413cb8
mov dword [esi + 0x19c], 1
jmp 0x413e3f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, ebx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], eax
sub esp, 8
fild qword [esp + 0x1c]
mov ecx, esi
fmul dword [0x42a8a0]
fstp qword [esp]
push 0x521f
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
mov al, byte [esi + 0x3d]
add esp, 0x10
test al, al
jne 0x413d0f
push 0x5210
mov ecx, esi
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 8
mov ecx, 0x10
or eax, 0xffffffff
lea edi, [esi + 0x6ae]
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x11c]
shl eax, 5
mov ecx, dword [eax + 0x4216e8]
and ecx, 0x7f8000
cmp ecx, 0x168000
jb 0x413db9
mov eax, dword [esi + 0x118]
mov cl, byte [esi + 0x118]
shr eax, 0x10
xor edx, edx
mov byte [esi + 0x6b0], al
mov dl, ah
xor eax, eax
mov al, byte [esi + 0x119]
mov byte [esi + 0x6af], dl
mov dl, byte [esi + 0xad3]
mov byte [esi + 0x6b1], al
mov al, byte [esi + 0xad6]
mov byte [esi + 0x6b2], cl
mov cl, byte [esi + 0xad7]
mov byte [esi + 0x6b7], dl
mov dl, byte [esi + 0xad8]
mov byte [esi + 0x6ba], al
mov al, byte [esi + 0xad9]
mov byte [esi + 0x6bb], cl
mov cl, byte [esi + 0xada]
mov byte [esi + 0x6bc], dl
mov byte [esi + 0x6bd], al
mov byte [esi + 0x6be], cl
jmp 0x413e28
mov al, byte [esi + 0xaf1]
mov dl, byte [esi + 0xaf0]
mov byte [esi + 0x6b4], al
mov eax, dword [esi + 0x118]
mov cl, byte [esi + 0xaf2]
mov byte [esi + 0x6b3], dl
shr eax, 0x10
xor edx, edx
mov byte [esi + 0x6b7], al
mov dl, ah
xor eax, eax
mov al, byte [esi + 0x119]
mov byte [esi + 0x6b5], cl
mov cl, byte [esi + 0x118]
mov byte [esi + 0x6b6], dl
mov dl, byte [esi + 0xad2]
mov byte [esi + 0x6b8], al
mov al, byte [esi + 0xaea]
mov byte [esi + 0x6b9], cl
mov byte [esi + 0x6ba], dl
mov byte [esi + 0x6d3], al
mov ecx, esi
call fcn.0040d4f0
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [esi + 0x19c], 0
or ebx, 0xffffffff
lea eax, [esi + 0xaae]
push ebx
push 0
push 0
push eax
push 1
push 0xff
mov ecx, esi
mov byte [eax], 0
call fcn.00412050
push 0x32
call edi
mov eax, dword [esi + 0x19c]
pop ebp
cmp eax, 3
ja case.default.0x413e73
jmp dword [eax*4 + 0x414130]
push 1
mov ecx, esi
call fcn.00403d60
test al, al
je 0x413e8f
push 0x40
call dword [sym.imp.USER32.dll_MessageBeep]
lea ecx, [esp + 0xc]
push str._Y__m__d__H:_M:_S
lea edx, [esp + 0x38]
push ecx
push edx
call sub.MFC42.DLL_CTime::GetTickCount
mov ecx, eax
call sub.MFC42.DLL_CTime::Format
mov eax, dword [eax]
mov ecx, esi
push eax
push 0x5270
mov dword [esp + 0x150], 0
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 0xc
lea ecx, [esp + 0xc]
mov dword [esp + 0x148], ebx
call sub.MFC42.DLL_CString::CString
jmp 0x4140f8
push 0
mov ecx, esi
call fcn.00403d60
test al, al
je 0x413f02
mov edi, dword [sym.imp.USER32.dll_MessageBeep]
push 0x10
call edi
push 0x10
call edi
push 0x10
call edi
call sub.MFC42.DLL_AfxGetThread
test eax, eax
je 0x413f14
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
jmp 0x413f16
xor eax, eax
lea ecx, [esp + 0x40]
push 0xff
push ecx
mov ecx, eax
call sub.MFC42.DLL_CWnd::GetWindowTextA
push 0xa
lea edx, [esp + 0x44]
push str.STC_ISP__V
push edx
call dword [sym.imp.MSVCRT.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x413fbe
mov edi, dword [sym.imp.MSVCRT.dll_strchr]
lea eax, [esp + 0x40]
push 0x29
push eax
call edi
add esp, 8
test eax, eax
je 0x413fbe
lea ecx, [esp + 0x40]
push 0x29
push ecx
call edi
add esp, 8
mov byte [eax], 0
lea edx, [esp + 0x28]
lea eax, [esp + 0x2c]
push str._Y__m__d__H:_M:_S
push edx
push eax
call sub.MFC42.DLL_CTime::GetTickCount
mov ecx, eax
call sub.MFC42.DLL_CTime::Format
mov ecx, dword [eax]
lea edx, [esp + 0x4a]
push ecx
push edx
push 0x5271
mov ecx, esi
mov dword [esp + 0x154], 1
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 0x10
lea ecx, [esp + 0x28]
mov dword [esp + 0x148], ebx
call sub.MFC42.DLL_CString::CString
jmp 0x4140f8
lea eax, [esp + 0x24]
push str._Y__m__d__H:_M:_S
lea ecx, [esp + 0x40]
push eax
push ecx
call sub.MFC42.DLL_CTime::GetTickCount
mov ecx, eax
call sub.MFC42.DLL_CTime::Format
mov edx, dword [eax]
mov ecx, esi
push edx
push 0x43a348
push 0x5271
mov dword [esp + 0x154], 2
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 0x10
lea ecx, [esp + 0x24]
mov dword [esp + 0x148], ebx
call sub.MFC42.DLL_CString::CString
jmp 0x4140f8
push 0
mov ecx, esi
call fcn.00403d60
test al, al
je 0x41402c
push 0
call dword [sym.imp.USER32.dll_MessageBeep]
lea eax, [esp + 0x20]
push str._Y__m__d__H:_M:_S
lea ecx, [esp + 0x34]
push eax
push ecx
call sub.MFC42.DLL_CTime::GetTickCount
mov ecx, eax
call sub.MFC42.DLL_CTime::Format
mov edx, dword [eax]
mov ecx, esi
push edx
push 0x528c
mov dword [esp + 0x150], 3
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 0xc
lea ecx, [esp + 0x20]
mov dword [esp + 0x148], ebx
call sub.MFC42.DLL_CString::CString
jmp 0x4140f8
push 0
mov ecx, esi
call fcn.00403d60
test al, al
je 0x414092
push 0
call dword [sym.imp.USER32.dll_MessageBeep]
lea eax, [esp + 0x1c]
push str._Y__m__d__H:_M:_S
lea ecx, [esp + 0x3c]
push eax
push ecx
call sub.MFC42.DLL_CTime::GetTickCount
mov ecx, eax
call sub.MFC42.DLL_CTime::Format
mov edx, dword [eax]
mov ecx, esi
push edx
push 0x5272
mov dword [esp + 0x150], 4
call fcn.00402e90
push eax
push esi
call fcn.00402ed0
add esp, 0xc
lea ecx, [esp + 0x1c]
mov dword [esp + 0x148], ebx
call sub.MFC42.DLL_CString::CString
jmp 0x4140f8
push 0
mov ecx, esi
call fcn.00403d60
test al, al
je 0x4140f8
push 0x40
call dword [sym.imp.USER32.dll_MessageBeep]
mov eax, dword [esi + 0x18]
cmp eax, ebx
je 0x414109
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x18], ebx
mov ecx, esi
call fcn.004122d0
mov eax, dword [esi + 0x19c]
mov ecx, dword [esp + 0x140]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x140
ret