Function at 0x42659b
Capabilities:
Create pipe
Delete registry value
Get system information on windows
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x158
push ebx
push esi
push edi
xor esi, esi
mov dword [ebp - 8], 0x9b55bb2c
inc esi
mov byte [ebp - 0x25], dl
mov edi, ecx
mov dword [ebp - 0x38], esi
push 0
mov dword [ebp - 0x24], edi
mov dword [ebp - 8], 0xffffffe7
pop ebx
jmp 0x4265db
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x4265d8
push ebx
call dword [sym.imp.USER32.dll_DestroyCursor]
inc dword [ebp - 8]
cmp dword [ebp - 8], 0xfffffff1
jle 0x4265c8
mov eax, dword [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
cmp eax, 0x534d
setg cl
imul eax, ecx, 0xfffd
test eax, eax
jne 0x42660e
mov eax, ebx
cmp dword [ebp - 8], ebx
je 0x426610
mov eax, esi
add eax, 6
mov dword [ebp - 8], eax
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x426625
call dword [sym.imp.USER32.dll_EndMenu]
mov dword [ebp - 0x14], esi
mov dword [ebp - 8], 6
mov dword [ebp - 4], esi
mov dword [ebp - 0x18], 0x702377d6
mov dword [ebp - 8], ebx
jmp 0x42664b
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x98], ebx
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x42663e
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
sub eax, 5
cmp eax, dword [ebp - 4]
jl 0x42666a
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
mov ecx, 0xbac89d73
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cmp ecx, eax
sbb eax, eax
neg eax
sub eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], ebx
jl 0x4266b2
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x98]
sub eax, 0x3c2f893b
mov dword [ebp - 0x18], eax
dec dword [ebp - 8]
jns 0x42669b
mov dword [ebp - 0x10], 0x9b55bb2c
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x18], 0xa50d0ce4
mov dword [ebp - 0x1c], 0x7991ad47
mov dword [ebp - 0x10], 0xffffffe3
cmp dword [ebp - 0x10], 0xffffffe5
jl 0x426964
mov edx, 0x48308faa
mov dword [ebp - 8], esi
xor ecx, ecx
mov dword [ebp - 0x18], 0xcf97a265
mov eax, dword [ebp - 8]
test eax, eax
setns cl
sub ecx, dword [ebp - 0x10]
dec ecx
je 0x4267de
mov dword [ebp - 0x18], 0x7b30498
mov dword [ebp - 0x20], 0x64ce34aa
mov dword [ebp - 0x20], 0x34ccbb24
mov dword [ebp - 4], 0xfff8
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0xec], edx
mov dword [ebp - 0xe8], edx
cmp dword [ebp - 8], ebx
jne 0x426964
mov eax, dword [ebp - 0x10]
xor ebx, ebx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
cmp eax, ecx
mov eax, dword [ebp - 8]
mov ecx, esi
setne bl
sub ecx, eax
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ebx, ecx
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 8]
setl bl
xor ecx, ecx
sub ebx, 0x746b41c3
cmp ebx, eax
setle cl
mov dword [ebp - 0x20], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
cmp eax, 0x1a078351
setg cl
xor ebx, ebx
cmp ecx, dword [ebp - 0x18]
jge 0x4267aa
mov ecx, ebx
cmp dword [ebp - 4], ebx
je 0x4267ac
mov ecx, esi
mov eax, dword [ebp - 4]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 8]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
cmp ecx, 0xfffffffd
setne dl
xor eax, eax
cmp edx, 0xabfd090d
setne al
mov dword [ebp - 0xec], eax
jmp 0x426952
mov dword [ebp - 4], 0x5c58
mov dword [ebp - 0x18], 0xd353ae79
cmp dword [ebp - 8], ebx
je 0x4268c1
mov dword [ebp - 0x20], 0xb1f0cfad
xor edx, edx
mov dword [ebp - 0x18], 0xfffffffd
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 8]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
sub ecx, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x433c
setg al
xor edx, edx
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setg dl
sub eax, edx
neg eax
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 0x9c23
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, 0xb64e3176
setle cl
cmp eax, ecx
mov eax, dword [ebp - 4]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 8]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp eax, ecx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x18]
setne dl
sub ecx, eax
imul edx, ecx
test edx, edx
jne 0x426947
cmp dword [ebp - 4], ebx
jmp 0x426943
push 4
mov dword [ebp - 0x18], 2
mov dword [ebp - 4], ebx
pop ecx
jmp 0x4268e1
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x13c], 0xfffc
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x4268d0
push 3
mov dword [ebp - 4], ebx
pop eax
jmp 0x42691d
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x426901
push ebx
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
push 3
pop eax
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x42691a
push ebx
push ebx
push 0x18f5
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
push 3
pop eax
inc dword [ebp - 4]
cmp dword [ebp - 4], eax
jle 0x4268ee
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x138]
je 0x426947
cmp dword [ebp - 0x1c], ebx
mov eax, ebx
je 0x426949
mov eax, esi
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
mov edx, 0x48308faa
cmp dword [ebp - 0x10], 0xffffffe5
jge 0x4266e7
mov dword [ebp - 0x10], 0x1152f54c
mov dword [ebp - 8], 0x2124f84b
mov dword [ebp - 0x38], 8
mov dword [ebp - 4], ebx
jmp 0x42698c
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x3c], 0xaa39ed0
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x42697e
mov ecx, dword [ebp - 8]
xor edx, edx
mov eax, dword [ebp - 8]
cmp ecx, eax
mov eax, 0xfffa
setl dl
cmp eax, edx
sbb eax, eax
inc eax
xor edx, edx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 8], edx
jmp 0x426a0f
mov dword [ebp - 4], edx
mov dword [ebp - 4], edx
cmp dword [ebp - 4], edx
jg 0x426a09
push 3
pop ecx
mov dword [ebp - 0x10], edx
jmp 0x4269d6
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa4], 0x38591b68
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x4269c5
mov dword [ebp - 0xa4], edx
jmp 0x4269f2
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x3c], edx
jne 0x4269fa
inc dword [ebp - 0xa4]
cmp dword [ebp - 0xa4], edx
jle 0x4269e3
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x3c]
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jle 0x4269c0
mov eax, dword [ebp - 0x3c]
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffe7
jl 0x4269b2
mov esi, dword [0x48c5ec]
mov dword [ebp - 4], 0xd313dd33
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 0xfffffff2
mov dword [ebp - 0x38], esi
jle 0x426a6a
push 3
pop ecx
mov dword [ebp - 0x1c], 0x90f1d898
mov dword [ebp - 8], edx
jmp 0x426a4e
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x12c], 6
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x426a3d
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 4], edx
jne 0x426a6a
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xfffffff2
jg 0x426a31
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], edx
mov dword [ebp - 4], 0xfffffff9
cmp dword [ebp - 4], 0x1b
mov dword [ebx], edx
mov dword [ebx + 4], edx
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edx
jl 0x426b3c
xor ecx, ecx
inc ecx
mov dword [ebp - 0x14], 8
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 8], edx
jmp 0x426ab0
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x30], 3
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x426aa2
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0xfffffffc
je 0x426b2f
mov dword [ebp - 0x14], 0xca955a63
mov dword [ebp - 8], edx
jmp 0x426adb
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xdc], 0xfffffffa
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x426aca
mov eax, dword [ebp - 0x30]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xd1dc6b79
sbb eax, eax
neg eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xd8]
mov eax, dword [ebp - 4]
sub ecx, eax
mov eax, dword [ebp - 4]
sub ecx, eax
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xfffffffc
jne 0x426abe
xor ecx, ecx
inc ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x1b
jge 0x426a8f
cmp byte [ebp - 0x25], dl
je 0x426c57
xor ecx, ecx
inc ecx
cmp esi, ecx
jne 0x426c57
mov dword [ebp - 4], 0x24a8c6a5
mov dword [ebp - 4], edx
jmp 0x426b6d
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x114], 0x717be9fb
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x426b5c
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 0xfffffff3
jle 0x426c29
push 3
mov eax, 0x69f4288a
pop edi
mov dword [ebp - 0x104], eax
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 8], 0xfffffff9
mov dword [ebp - 8], edi
cmp dword [ebp - 8], edx
jl 0x426c19
mov dword [ebp - 0x14], 0x283066c9
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x426be6
push edx
push 0x14fb
push 0x18b4
push 0xbb7
push 0x1e28
push 0x10bf
push 0x22a8
push edx
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
xor edx, edx
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], edx
jl 0x426c0f
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x426c00
push edx
call dword [sym.imp.KERNEL32.dll_EncodePointer]
xor edx, edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x104]
dec dword [ebp - 0x14]
jns 0x426bee
dec dword [ebp - 8]
jns 0x426bae
mov eax, 0x69f4288a
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xfffffff3
jg 0x426b87
mov edi, dword [ebp - 0x24]
mov dword [ebp - 4], edx
jmp 0x426c44
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x426c41
push edx
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
xor edx, edx
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jle 0x426c2e
mov dword [ebx + 8], 4
mov dword [ebx + 0xc], 0x48c5ec
mov dword [ebp - 0x1c], 0xcd8c45cd
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x426c75
push edx
push edx
push edx
push edx
push edx
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x426ca8
push 0x19bd
push 0x1870
push 0x11bf
push 0xa36
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Ellipse]
xor edx, edx
cmp edi, esi
jge 0x4277e2
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x10], 0xfffffff6
jmp 0x426cfa
mov dword [ebp - 4], 0xaa9ac70c
mov dword [ebp - 0x1c], 0xbfc3938d
mov dword [ebp - 4], edx
jmp 0x426cf1
mov dword [ebp - 8], 1
mov dword [ebp - 8], edx
jmp 0x426ce8
mov eax, dword [ebp - 4]
mov dword [ebp - 0x1c], eax
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffe3
jge 0x426cdf
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xfffffffa
jne 0x426cd3
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe2
jle 0x426cc0
mov dword [ebp - 0x10], edx
mov ebx, 0x48c5f0
mov dword [ebp - 8], 0xfffffffe
push 3
mov dword [ebp - 4], 0xfffffff9
mov dword [ebp - 8], edx
pop esi
jmp 0x426d2c
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x4c], 0xfffc
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x426d1e
mov dword [ebp - 0x10], 2
cmp dword [ebp - 0x10], edx
jl 0x426dc1
mov dword [ebp - 0x14], 0xe0cd
xor edx, edx
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x18], 0x69cd17cd
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, esi
setle cl
add ecx, 0x2c51
cmp dword [ebp + eax*4 - 0x4c], ecx
jg 0x426d92
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setge dl
mov dword [ebp - 8], edx
dec dword [ebp - 0x10]
jns 0x426d41
xor edx, edx
mov dword [ebp - 8], 0xc2a91181
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edx
jne 0x426e64
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setg dl
xor eax, eax
cmp edx, 0x8d34108f
setne al
xor edx, edx
cmp eax, dword [ebp - 0x44]
jg 0x426e64
cmp dword [ebp - 4], edx
jne 0x426e64
mov byte [ebp - 9], dl
cmp byte [ebp - 9], dl
je 0x426e26
push edx
push 0x22e3
push edx
push 0x1138
call dword [sym.imp.KERNEL32.dll_GetStringTypeW]
xor edx, edx
xor esi, esi
inc esi
test edi, edi
jle 0x4273fc
mov edi, dword [ebx]
mov dword [ebp - 0x14], 0x6e52d8cb
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], 0x47c2c9eb
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], esi
mov dword [ebp - 4], 0x3b16aac8
mov dword [ebp - 4], 0xa2a0c0e0
mov dword [ebp - 4], edx
jmp 0x426f62
xor esi, esi
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 4], edx
inc esi
jmp 0x426e81
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x50], 0xd90c37c5
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x426e73
push 2
mov dword [ebp - 4], edx
pop ecx
jmp 0x426e9b
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xe4], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x426e8e
mov dword [ebp - 4], 0x8cb0b9d6
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], edx
jl 0x426e29
mov dword [ebp - 0x14], 0x89f82a41
mov dword [ebp - 0x1c], 0x4ddaf14
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x4c]
dec dword [ebp - 0x50]
test eax, eax
mov eax, esi
cmovg eax, edx
neg eax
jne 0x426f1d
mov eax, dword [ebp - 8]
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov edx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 4]
sub edx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x14]
cmp eax, edx
setge cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setne dl
sub edx, 6
neg edx
sbb edx, edx
xor eax, eax
inc edx
cmp edx, 9
setg al
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
xor edx, edx
push 0
mov ecx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 4]
add ecx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0xe0]
cmp ecx, eax
mov eax, dword [ebp - 0xe0]
setl dl
sub edx, eax
mov dword [ebp - 0x1c], edx
dec dword [ebp - 4]
pop edx
jns 0x426eb3
jmp 0x426e29
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x40], 0x75ee
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x426f54
dec dword [ebp - 0x18]
xor edx, edx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
setl dl
xor ecx, ecx
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], ecx
je 0x426f96
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x20], eax
jl 0x426f96
mov eax, esi
cmp dword [ebp - 0x40], ecx
jne 0x426f98
mov eax, ecx
cmp dword [ebp - 0x14], eax
jl 0x426fa4
mov eax, esi
cmp dword [ebp - 0x20], ecx
jne 0x426fa6
mov eax, ecx
mov dword [ebp - 4], eax
xor edx, edx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
setl dl
cmp edx, esi
sbb eax, eax
xor ecx, ecx
neg eax
imul eax, dword [ebp - 0x14]
cmp eax, 0xffffffff
setne cl
imul ecx, dword [ebp - 0x40]
mov dword [ebp - 4], ecx
xor ecx, ecx
mov byte [ebp - 9], cl
cmp byte [ebp - 9], cl
je 0x426fe1
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
xor ecx, ecx
mov dword [ebp - 0x18], 0x278c007c
add ebx, 4
mov dword [ebp - 8], 0x1543f36f
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x18], 0xf34c9333
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], ecx
jmp 0x427012
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x34], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x427008
push 3
mov dword [ebp - 4], ecx
pop edx
jmp 0x427030
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x88], 0x3d2f5512
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jl 0x42701f
mov eax, dword [ebp - 0x34]
mov edx, esi
cmp dword [ebp - 0x34], ecx
jne 0x427041
mov edx, ecx
mov eax, dword [ebp - 0x34]
xor ecx, ecx
cmp edx, eax
setl cl
cmp ecx, 0xa10dd664
jbe 0x42705a
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x42705c
mov eax, esi
mov dword [ebp - 0x18], 0xdcdf
mov ecx, dword [ebp - 0x34]
imul ecx, eax
push 3
pop eax
push 3
sub ecx, eax
mov eax, esi
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
sub eax, ecx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x18]
imul ecx, eax
mov eax, dword [ebp - 0x84]
sub ecx, eax
mov eax, dword [ebp - 0x84]
add eax, ecx
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x84]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setle dl
neg edx
xor ecx, ecx
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x10], 0xf57a7c2
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 4], ecx
pop edx
jmp 0x4270f7
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x94], 0x77862fd4
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jl 0x4270e6
mov dword [ebp - 4], ecx
jmp 0x42710f
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x78], 0xbe26b5cf
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jl 0x427101
push 2
pop ebx
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ecx
jl 0x4271d8
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], ecx
jl 0x4271cf
mov dword [ebp - 4], 4
mov dword [ebp - 0x1c], 0xc27f
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], ebx
jg 0x4271c0
mov dword [ebp - 0x20], 0x9ba095a9
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], ecx
jl 0x42718e
mov byte [ebp - 9], cl
cmp byte [ebp - 9], 0
je 0x427172
push ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebp - 4]
push 0
mov ecx, dword [ebp + eax*4 - 0x94]
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x94], ecx
dec dword [ebp - 0x20]
pop ecx
jns 0x427162
mov eax, dword [ebp - 8]
push 0
mov eax, dword [ebp + eax*4 - 0x94]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
neg ecx
sbb ecx, ecx
neg ecx
mov eax, dword [ebp + eax*4 - 0x94]
imul eax, ecx
pop ecx
inc eax
mov dword [ebp - 0x74], eax
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jle 0x427153
mov eax, dword [ebp - 8]
mov dword [ebp - 4], eax
dec dword [ebp - 8]
jns 0x42713d
dec dword [ebp - 0x10]
jns 0x427123
mov eax, dword [ebp - 0x94]
xor ebx, ebx
mov dword [ebp - 0x10], 0x93d7f28
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setl bl
neg ebx
sub ebx, 0xb5fb
neg ebx
push 3
sbb ebx, ebx
xor edx, edx
inc ebx
cmp eax, ebx
mov eax, dword [ebp - 0x74]
mov ebx, dword [ebp - 0x14]
setg dl
xor ecx, ecx
imul edx, eax
mov eax, dword [ebp - 0x74]
cmp edx, eax
pop edx
sete cl
xor eax, eax
mov dword [ebp - 0x74], ecx
inc eax
mov dword [ebp - 0x14], 0xfffffff9
xor ecx, ecx
mov dword [ebp - 0x1c], 0x43d9532b
add ebx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1c], 0x3afc3718
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], 0xdb6d0374
mov dword [ebp - 0x1c], 0x5131d8b9
mov dword [ebp - 0x1c], 0x3fa3a92b
mov dword [ebp - 0x1c], 0xa2ae7b79
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], 0x7c2c9ebf
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], edx
mov edx, 0xd1d8
mov dword [ebp - 0x1c], 0xa00d0e75
mov dword [ebp - 0x1c], 0xa2b82c44
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1c], 0x9a56718e
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xd4], edx
mov dword [ebp - 0xd0], edx
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xc8], edx
cmp dword [ebp - 0x14], ecx
jne 0x4272dd
mov eax, ecx
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0xcc]
test esi, esi
jne 0x4272ed
add ebx, 8
mov dword [ebp - 0x10], 0xfff8
xor esi, esi
mov dword [ebp - 8], ecx
inc esi
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x20], 0x2fbb6bc3
mov dword [ebp - 0x14], 0x6d8d3833
mov dword [ebp - 0x20], ecx
jmp 0x42731e
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x54], 0xf9c3
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x427310
dec dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], esi
mov dword [ebp - 0x18], 0xfffffffd
mov dword [ebp - 0x18], 0x5537
mov dword [ebp - 0x1c], 6
cmp dword [ebp - 8], 0xfcc013ce
sbb eax, eax
neg eax
cmp eax, dword [ebp - 4]
jge 0x42736f
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x20], ecx
je 0x427380
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setl dl
xor ecx, ecx
imul edx, dword [ebp - 4]
mov eax, dword [ebp - 0x54]
cmp edx, eax
setg cl
xor edx, edx
cmp ecx, dword [ebp - 8]
jl 0x4273b5
mov eax, edx
cmp dword [ebp - 0x54], edx
je 0x4273b7
mov eax, esi
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
dec eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
cmp dword [ebp - 8], edx
jne 0x4273df
cmp dword [ebp - 4], edx
jne 0x4273df
mov eax, edx
add eax, 0xffff4fca
add ebx, edi
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
inc eax
dec dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jne 0x426e31
mov dword [ebp - 0x1c], 0xac78
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x427416
push edx
push edx
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x427440
push edx
push 0x67f
push 0x26b9
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
xor edx, edx
mov edi, dword [ebx]
mov dword [ebp - 0x1c], 0x92beaa32
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
mov dword [ebp - 0x18], edi
je 0x427463
push 0x1af9
push edx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x427476
push edx
push edx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
xor edx, edx
mov dword [ebp - 8], 0x24039b64
add ebx, 4
mov dword [ebp - 0x1c], 0xe307b5ca
mov dword [ebp - 0x24], edx
mov dword [ebp - 4], 0x5a1fa147
mov dword [ebp - 0x1c], 0x9e3cf957
push 3
mov dword [ebp - 0x24], 0xfff6
mov dword [ebp - 4], edx
pop ecx
jmp 0x4274b4
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xc4], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x4274a7
mov dword [ebp - 4], edx
jmp 0x4274cb
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x110], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x4274be
mov dword [ebp - 8], edx
cmp dword [ebp - 8], 0xffffffe2
jl 0x427526
push 2
pop eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 4
jge 0x42751a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x158], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x427504
push 2
pop eax
inc dword [ebp - 0x24]
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffe2
jge 0x4274dc
mov dword [ebp - 4], edx
jmp 0x4275cb
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], edx
jmp 0x427551
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x148], 0xa5e0b2f6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x427540
mov eax, dword [ebp - 0x24]
mov dword [ebp - 8], 0x4eb300a9
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x110]
inc dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xc4]
add eax, dword [ebp - 0xc4]
je 0x427593
mov eax, esi
cmp dword [ebp - 0x1c], edx
jne 0x427595
mov eax, edx
dec eax
xor ecx, ecx
cmp eax, 0xe3f0
push 0
setl cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xc4]
mov ecx, dword [ebp - 0x24]
sub ecx, eax
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x110], ecx
pop eax
sete al
push 3
mov dword [ebp - 0x1c], eax
inc dword [ebp - 4]
pop ecx
cmp dword [ebp - 4], 2
jle 0x42752e
mov esi, dword [ebx]
xor ecx, ecx
mov dword [ebp - 0x10], 0xbe8e56f9
inc ecx
mov dword [ebp - 4], edx
jmp 0x4275f4
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x2c], 0x6bdde0bc
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x4275e6
mov dword [ebp - 4], edx
jmp 0x42760b
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xa8], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x4275fe
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], edx
jl 0x4276c3
push 3
pop edi
mov dword [ebp - 4], 5
mov dword [ebp - 0x24], 0xd8c65816
mov dword [ebp - 0x1c], 0xfffffffd
mov dword [ebp - 4], edx
cmp dword [ebp - 4], edx
jl 0x4276b7
mov dword [ebp - 0x1c], 0xffffffff
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
cmp edi, eax
mov eax, dword [ebp - 0x24]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setl dl
sub edx, 0x456b8642
neg edx
sbb edx, edx
add edx, 0xffff25e8
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x1c], edx
dec dword [ebp - 4]
jns 0x42763c
xor edx, edx
dec dword [ebp - 0x10]
jns 0x42761f
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], edx
jl 0x427705
mov dword [ebp - 0x24], 0x95866b38
xor edx, edx
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + eax*4 - 0x2c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xd482
setne al
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xa8], eax
dec dword [ebp - 0x10]
jns 0x4276cb
xor edx, edx
push 4
pop ecx
add ebx, ecx
test esi, esi
jne 0x4277df
cmp byte [ebp - 0x25], 0
je 0x42772a
cmp dword [ebp - 0x38], 1
jne 0x42772a
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x10]
push 4
add dword [ecx + 8], eax
pop ecx
mov eax, dword [ebx]
add ebx, ecx
mov dword [ebp - 0x38], eax
push edi
mov eax, dword [ebx]
add ebx, ecx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], ebx
call fcn.00465a26
mov dword [ebp - 0x24], eax
xor eax, eax
pop ecx
mov dword [ebp - 0x7c], eax
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x7c]
push eax
push edi
call fcn.0044c639
mov esi, dword [ebp - 0x6c]
xor edx, edx
mov ecx, edx
test edi, edi
jle 0x4277bc
mov eax, ecx
and eax, 0x80000001
jns 0x427779
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x38]
add eax, ecx
add eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x1c]
cdq
idiv edi
xor eax, eax
cmp word [esi + edx*2], ax
je 0x4277a5
xor ebx, ebx
lea eax, [edx + 1]
cdq
idiv edi
cmp word [esi + edx*2], bx
jne 0x427796
mov ebx, dword [ebp - 0x14]
xor eax, eax
inc eax
mov word [esi + edx*2], ax
mov al, byte [edx + ebx]
mov edx, dword [ebp - 0x24]
mov byte [ecx + edx], al
inc ecx
cmp ecx, edi
jl 0x42776b
xor edx, edx
mov ebx, dword [ebp + 8]
mov eax, dword [ebp - 0x24]
mov dword [ebx], edi
mov dword [ebx + 4], eax
test esi, esi
je 0x4277e2
push esi
call fcn.00466f16
xor edx, edx
pop ecx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], edx
jmp 0x4277e2
mov ebx, dword [ebp + 8]
xor esi, esi
inc esi
mov dword [ebp - 4], esi
mov dword [ebp - 8], 0x5ff44426
push 3
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0x14], edx
pop ecx
jmp 0x42780c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x60], 0xec0ae971
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x4277fe
push 2
mov dword [ebp - 4], edx
pop edi
cmp dword [ebp - 4], edi
jg 0x427919
push 4
pop ebx
mov dword [ebp - 0x1c], 0x943e2f7c
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x60]
cmp eax, dword [ebp - 0x58]
jl 0x427844
cmp dword [ebp - 0x58], edx
jne 0x427916
jmp 0x42790a
mov dword [ebp - 0x24], 0x51ebf0dd
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x14], edx
jmp 0x427864
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x120], 0x166941fc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x427853
cmp dword [ebp - 0x120], edx
je 0x4278c9
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 0x38]
add eax, 0xeab3
add eax, ecx
je 0x42788b
mov ecx, esi
cmp dword [ebp - 0x1c], edx
jne 0x42788d
mov ecx, edx
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x24], eax
xor eax, eax
cmp ecx, 0xc4dd
mov ecx, dword [ebp - 0x24]
setne al
sub eax, 0x4c6a
neg eax
sbb eax, eax
xor edx, edx
inc eax
sub ecx, eax
mov eax, dword [ebp - 0x118]
cmp eax, ecx
mov eax, dword [ebp - 4]
setle dl
cmp dword [ebp + eax*4 - 0x60], edx
jl 0x4278c7
mov edx, esi
jmp 0x4278c9
xor edx, edx
mov eax, dword [ebp - 0x58]
xor ecx, ecx
cmp edx, eax
setle cl
cmp ebx, ecx
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], edx
jne 0x427916
mov dword [ebp - 8], edi
cmp dword [ebp - 8], edx
jl 0x427907
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x427902
push edx
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
xor edx, edx
dec dword [ebp - 8]
jns 0x4278f0
push 3
pop ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jle 0x427823
mov ebx, dword [ebp + 8]
mov dword [ebp - 8], edx
jmp 0x427944
mov byte [ebp + 0xb], dl
cmp byte [ebp + 0xb], 0
je 0x427941
push 0x18ed
push 0x40
push 0x1f33
push 0x4f7
push edx
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
xor edx, edx
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xfffffffa
jle 0x42791e
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret