Function at 0x1003689f
Capabilities:
Extract resource via kernel32 functions
Get common file path
Get file attributes
Get file system object information
Identify system language via api
Query environment variable
Read .ini file
Set environment variable
Set registry value

Disassembly:
mov eax, 0x1006c021
call fcn.1006abd8
sub esp, 0x88c
push ebx
xor eax, eax
mov dword [ebp - 0x44], ecx
inc eax
mov byte [ebp - 0x62], dl
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x3bc]
push esi
mov dword [ebp - 0x14], 0x7e0d1b71
mov dword [ebp - 0x28], 0x5a60915b
push edi
mov dword [ebp - 0x1c], 0x7fa6fbaa
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x20], 0xf04a32a0
push 4
call fcn.1002a7d6
xor ebx, ebx
push 4
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x10036905
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1a0], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100368f4
mov dword [ebp - 0x14], ebx
jmp 0x10036922
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3bc]
mov dword [eax + ecx*4], 0xf905
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1003690f
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xc92ea21e
jae 0x1003694b
cmp dword [ebp - 0x18], ebx
jne 0x1003694b
xor edx, edx
mov eax, ebx
inc edx
jmp 0x10036950
xor edx, edx
inc edx
mov eax, edx
mov ecx, dword [ebp - 0x18]
imul ecx, eax
mov eax, edx
push 3
pop edi
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, 0x2395e2de
setne cl
xor eax, eax
cmp ecx, 0x6aa1c33c
mov ecx, 0x96fcd4d3
setge al
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], ebx
je 0x10036a41
mov dword [ebp - 0x24], 0x88ad
mov dword [ebp - 0x20], 0xc18a
mov dword [ebp - 0x3c], 0x3e1fe01
mov dword [ebp - 0x14], ebx
jmp 0x100369c0
mov dword [ebp - 0x3c], 5
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x1a0], ebx
jne 0x100369c5
mov dword [ebp - 0x3c], 0x8dcfd8f2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jle 0x100369a3
cmp dword [ebp - 0x24], ebx
je 0x10036a0f
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x24]
je 0x100369e2
mov eax, edx
cmp dword [ebp - 0x20], ebx
jne 0x100369e4
mov eax, ebx
cmp ecx, eax
sbb eax, eax
xor ecx, ecx
neg eax
cmp ecx, eax
sbb eax, eax
inc eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x28]
jle 0x10036a03
mov eax, edx
cmp dword [ebp - 0x18], ebx
jne 0x10036a05
mov eax, ebx
mov ecx, edx
cmp eax, dword [ebp - 0x19c]
jl 0x10036a11
mov ecx, ebx
mov eax, dword [ebp - 0x19c]
imul eax, ecx
cmp eax, 0xe8e23095
mov eax, dword [ebp - 0x24]
sbb edx, edx
neg eax
xor ecx, ecx
neg edx
cmp eax, 0xb400
setl cl
xor eax, eax
cmp ecx, edx
setg al
mov dword [ebp - 0x14], eax
jmp 0x10036b58
mov dword [ebp - 0x20], 0x86adb69c
mov dword [ebp - 0x24], ebx
jmp 0x10036a5e
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x334], 0xffffffff
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10036a4d
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x194]
mov eax, dword [ebp - 0x32c]
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x194]
dec eax
neg eax
sbb eax, eax
mov edx, eax
mov eax, dword [ebp - 0x194]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, edx
mov eax, dword [ebp - 0x32c]
setle cl
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setle dl
mov dword [ebp - 0x20], edx
xor edx, edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
mov esi, dword [ebp - 0x32c]
mov eax, dword [ebp - 0x198]
setne dl
add esi, edx
neg esi
sbb esi, esi
xor ecx, ecx
neg esi
cmp esi, eax
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x19c]
setg dl
sub edx, eax
cmp edx, dword [ebp - 0x28]
jne 0x10036b01
cmp dword [ebp - 0x32c], ebx
je 0x10036b01
xor eax, eax
inc eax
jmp 0x10036b03
mov eax, ebx
mov dword [ebp - 0x20], eax
xor ebx, ebx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3bc]
cmp dword [eax + 4], ebx
mov dword [ebp - 0x14], 0xfffffff8
mov ecx, dword [ebp - 0x28]
setne bl
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, ebx
setl al
xor ecx, ecx
cmp eax, 0x419813da
mov eax, dword [ebp - 0x1a0]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
xor ebx, ebx
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x3bc]
call fcn.1002add8
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0x7e0d1b71
push 0xffffffffffffffe7
mov dword [ebp - 0x28], 0xe0a8eac8
mov dword [ebp - 0x28], ebx
pop esi
jmp 0x10036bb7
mov dword [ebp - 0x24], 0xf951fe77
mov dword [ebp - 0x24], ebx
jmp 0x10036bae
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10036bab
push 0x25b7
push ebx
push 0x1831
push 0x17ea
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffeb
je 0x10036b8c
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jge 0x10036b80
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10036bcd
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov dword [ebp - 0x28], 0x5a60915b
xor ecx, ecx
mov dword [ebp - 0x34], 0x7fa6fbaa
inc ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x24], ebx
jmp 0x10036bfe
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x70], 0xe80031aa
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10036bf0
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 0xffffffec
jle 0x10036c63
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x10036c27
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
sub edx, eax
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
cmp eax, edx
setne cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffec
jg 0x10036c0c
xor ecx, ecx
inc ecx
mov dword [ebp - 0x14], edi
jmp 0x10036d14
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], 0x389d0e13
mov dword [ebp - 0x24], ebx
jmp 0x10036c88
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x7c], 0x83d1f0df
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10036c7a
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x70], ebx
je 0x10036cb5
cmp dword [ebp - 0x7c], ebx
jne 0x10036cb7
mov ecx, ebx
mov eax, dword [ebp - 0x7c]
xor eax, eax
cmp ecx, 0xfffffffb
push 1
sete al
xor ecx, ecx
test eax, eax
sets cl
sub ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x7c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
imul ecx, eax
mov eax, dword [ebp - 0x70]
cmp ecx, eax
mov eax, dword [ebp - 0x7c]
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x70], ecx
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
neg eax
pop ecx
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jg 0x10036c6b
mov dword [ebp - 0x20], 0xf04a32a0
lea ecx, [ebp - 0x494]
push 4
call fcn.1002a7d6
mov dword [ebp - 0x20], 0x283066c9
xor ecx, ecx
mov dword [ebp - 0x1c], 0x61d2250d
mov dword [ebp - 0x40], 0x10789328
push 6
pop eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], 0x732a
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], 0x7b47e0fa
mov dword [ebp - 0x4c], 0x6bae
mov dword [ebp - 0x38], 0xfffffff6
mov eax, dword [ebp - 0x28]
cmp eax, 0x34ca
setge cl
xor esi, esi
inc esi
cmp ecx, esi
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x40]
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
mov edx, esi
setle cl
dec dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov ecx, esi
cmovne ecx, ebx
xor eax, eax
cmp ecx, 0x5809
setl al
xor ecx, ecx
sub edx, eax
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setg cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
setle cl
xor eax, eax
test ecx, ecx
setns al
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setle cl
cmp dword [ebp - 0x1c], ecx
jge 0x10036e08
mov edx, esi
cmp dword [ebp - 0x38], ebx
jne 0x10036e0a
mov edx, ebx
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
cmp eax, edx
setl cl
xor edx, edx
mov dword [ebp - 0x28], ecx
inc edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x24], ebx
jmp 0x10036e46
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x234], 7
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10036e35
mov dword [ebp - 0x14], ebx
jmp 0x10036ea0
mov dword [ebp - 0x1c], 0x552bf338
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + eax*4 - 0x234]
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x234], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x234]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], 0xaa4
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x230], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jle 0x10036e50
mov dword [ebp - 0x14], ebx
jmp 0x10036ebc
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x178], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10036eab
mov dword [ebp - 0x14], ebx
jmp 0x10036eda
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x494]
mov dword [eax + ecx*4], 0xf905
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10036ec7
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xc92ea21e
jae 0x10036eff
mov eax, ebx
cmp dword [ebp - 0x18], ebx
je 0x10036f01
mov eax, edx
mov ecx, dword [ebp - 0x18]
imul ecx, eax
mov eax, edx
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, 0x2395e2de
setne cl
xor eax, eax
cmp ecx, 0x6aa1c33c
setge al
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], ebx
je 0x10036fef
mov dword [ebp - 0x24], 0x88ad
mov dword [ebp - 0x20], 0xc18a
mov dword [ebp - 0x3c], 0x3e1fe01
mov dword [ebp - 0x14], ebx
jmp 0x10036f69
mov dword [ebp - 0x3c], 5
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x178], ebx
jne 0x10036f6e
mov dword [ebp - 0x3c], 0x8dcfd8f2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jle 0x10036f4c
cmp dword [ebp - 0x24], ebx
je 0x10036fbd
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x24]
je 0x10036f8b
mov eax, edx
cmp dword [ebp - 0x20], ebx
jne 0x10036f8d
mov eax, ebx
mov ecx, 0x96fcd4d3
cmp ecx, eax
sbb eax, eax
xor ecx, ecx
neg eax
cmp ecx, eax
sbb eax, eax
inc eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x28]
jle 0x10036fb1
mov eax, edx
cmp dword [ebp - 0x18], ebx
jne 0x10036fb3
mov eax, ebx
mov ecx, edx
cmp eax, dword [ebp - 0x174]
jl 0x10036fbf
mov ecx, ebx
mov eax, dword [ebp - 0x174]
imul eax, ecx
cmp eax, 0xe8e23095
mov eax, dword [ebp - 0x24]
sbb edx, edx
neg eax
xor ecx, ecx
neg edx
cmp eax, 0xb400
setl cl
xor eax, eax
cmp ecx, edx
setg al
mov dword [ebp - 0x14], eax
jmp 0x10037106
mov dword [ebp - 0x20], 0x86adb69c
mov dword [ebp - 0x24], ebx
jmp 0x1003700c
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x34c], 0xffffffff
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10036ffb
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x344]
mov eax, dword [ebp - 0x170]
add eax, dword [ebp - 0x16c]
dec eax
neg eax
sbb eax, eax
mov edx, eax
mov eax, dword [ebp - 0x16c]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, edx
mov eax, dword [ebp - 0x344]
setle cl
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setle dl
mov dword [ebp - 0x20], edx
xor edx, edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x174]
cmp ecx, eax
mov esi, dword [ebp - 0x344]
mov eax, dword [ebp - 0x170]
setne dl
add esi, edx
neg esi
sbb esi, esi
xor ecx, ecx
neg esi
cmp esi, eax
mov eax, dword [ebp - 0x34]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x174]
setg dl
sub edx, eax
cmp edx, dword [ebp - 0x28]
jne 0x100370af
cmp dword [ebp - 0x344], ebx
je 0x100370af
xor eax, eax
inc eax
jmp 0x100370b1
mov eax, ebx
mov dword [ebp - 0x20], eax
xor ebx, ebx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x494]
cmp dword [eax + 4], ebx
mov dword [ebp - 0x14], 0xfffffff8
mov ecx, dword [ebp - 0x28]
setne bl
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, ebx
setl al
xor ecx, ecx
cmp eax, 0x419813da
mov eax, dword [ebp - 0x178]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
xor ebx, ebx
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x494]
call fcn.1002add8
xor ecx, ecx
mov dword [ebp - 0x14], ebx
inc ecx
jmp 0x1003712a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xac], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10037119
push 2
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x10037148
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x608], 0x7102
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10037137
mov dword [ebp - 0xac], ebx
jmp 0x1003722d
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x30], ebx
jl 0x100371d8
mov dword [ebp - 0x28], 0xc6338430
mov dword [ebp - 0x28], ebx
jmp 0x100371ce
mov dword [ebp - 0x24], ebx
jmp 0x10037185
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1f0], 0x29c1464f
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10037174
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x100371a4
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
xor ecx, ecx
push 2
inc ecx
pop edx
mov dword [ebp - 0x1f0], ebx
jmp 0x100371c3
mov eax, dword [ebp - 0x1f0]
mov dword [ebp + eax*4 - 0x608], 0xffffffff
inc dword [ebp - 0x1f0]
cmp dword [ebp - 0x1f0], edx
jl 0x100371ac
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ecx
jle 0x1003716f
dec dword [ebp - 0x30]
jns 0x10037163
mov dword [ebp - 0x30], 0xffffffed
cmp dword [ebp - 0x30], 0x17
jle 0x10037227
mov dword [ebp - 0x24], 0xc865b49d
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0xfffffffb
jle 0x1003721b
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x1003720f
push 0x1ae3
push 0xdab
push ebx
call dword [sym.imp.USER32.dll_DeleteMenu]
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffffb
jg 0x100371f5
push 2
pop edx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x17
jg 0x100371e5
xor ecx, ecx
inc ecx
dec dword [ebp - 0xac]
cmp dword [ebp - 0xac], 0xffffffe9
jg 0x10037158
mov dword [ebp - 0x28], 0xe0a8eac8
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], 0xffffffe7
jl 0x10037390
jmp 0x10037253
xor ecx, ecx
inc ecx
mov dword [ebp - 0x24], 0xf951fe77
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 0xffffffeb
jne 0x10037380
jmp 0x1003726c
xor ecx, ecx
inc ecx
mov dword [ebp - 0x20], 0x15e1
cmp dword [ebp - 0x20], 0x11ab
jge 0x10037354
mov esi, ecx
mov edi, ecx
mov ecx, ebx
lea eax, [esi + esi]
mov dword [ebp + ecx - 0x828], esi
push 0x1d
cdq
pop esi
idiv esi
imul eax, edi, 3
mov dword [ebp + ecx - 0x898], edi
mov esi, edx
push 0x1d
pop edi
add ecx, 4
cdq
idiv edi
mov edi, edx
cmp ecx, 0x70
jl 0x10037286
xor edx, edx
mov ecx, ebx
push 0x1d
inc edx
pop esi
imul eax, edx, 0xa0
mov dword [ebp + ecx*4 - 0x7b4], edx
push 0xe
cdq
idiv esi
inc ecx
pop eax
cmp ecx, eax
jl 0x100372ba
lea eax, [ebp - 0xf4]
push eax
push 0x10007808
call fcn.100539eb
pop ecx
pop ecx
jmp 0x1003734a
lea esi, [eax + 1]
lea eax, [eax*2 + 1]
cdq
push 0x1c
pop ecx
idiv ecx
mov eax, esi
push 0xe
imul edi, dword [ebp + edx*4 - 0x828], 9
cdq
idiv ecx
sub edi, 9
mov eax, esi
mov ecx, dword [ebp + edx*4 - 0x898]
dec ecx
cdq
imul edi, ecx
pop ecx
idiv ecx
push 0x1d
pop ecx
mov eax, dword [ebp + edx*4 - 0x7b4]
dec eax
imul eax, edi
cdq
idiv ecx
push edx
push 0x10007848
call fcn.10053e49
lea eax, [ebp - 0xf4]
push eax
push 0x10007808
call fcn.100539eb
add esp, 0x10
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x100372e7
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10037373
push 0x25b7
push ebx
push 0x1831
push 0x17ea
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffeb
je 0x10037269
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe7
jge 0x10037250
push 3
pop edi
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x100373a1
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov dword [ebp - 0x14], ebx
xor ecx, ecx
mov dword [ebp - 0x28], 8
inc ecx
mov dword [ebp - 0x24], ebx
jmp 0x100373c1
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x80], 0xe80031aa
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x100373b3
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 0xffffffec
jle 0x10037426
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x100373ea
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
sub edx, eax
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
cmp eax, edx
setne cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffec
jg 0x100373cf
xor ecx, ecx
inc ecx
mov dword [ebp - 0x14], edi
jmp 0x100374f2
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], 0x389d0e13
mov dword [ebp - 0x24], ebx
jmp 0x1003744e
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x84], 0x83d1f0df
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x1003743d
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x80], ebx
je 0x10037484
cmp dword [ebp - 0x84], ebx
jne 0x10037486
mov ecx, ebx
mov eax, dword [ebp - 0x84]
xor eax, eax
cmp ecx, 0xfffffffb
push 1
sete al
xor ecx, ecx
test eax, eax
sets cl
sub ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x84]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
imul ecx, eax
mov eax, dword [ebp - 0x80]
cmp ecx, eax
mov eax, dword [ebp - 0x84]
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x80], ecx
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
neg eax
pop ecx
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe7
jg 0x1003742e
xor edx, edx
xor ecx, ecx
inc edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x20], 0x283066c9
mov dword [ebp - 0x1c], 0x61d2250d
mov dword [ebp - 0x40], 0x10789328
push 6
pop eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], 0x732a
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], 0x7b47e0fa
mov dword [ebp - 0x4c], 0x6bae
mov dword [ebp - 0x38], 0xfffffff6
mov eax, dword [ebp - 0x28]
cmp eax, 0x34ca
setge cl
cmp ecx, edx
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x40]
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setle cl
dec dword [ebp - 0x1c]
cmp eax, ecx
jne 0x1003757f
xor ecx, ecx
inc ecx
jmp 0x10037581
mov ecx, ebx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp ecx, 0x5809
setl al
xor edx, edx
inc edx
xor ecx, ecx
sub edx, eax
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setg cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
setle cl
xor eax, eax
test ecx, ecx
setns al
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setle cl
cmp dword [ebp - 0x1c], ecx
jge 0x100375de
cmp dword [ebp - 0x38], ebx
je 0x100375de
xor edx, edx
inc edx
jmp 0x100375e0
mov edx, ebx
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
cmp eax, edx
setl cl
xor edx, edx
mov dword [ebp - 0x28], ecx
inc edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x14], 0x7e0d1b71
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x24], ebx
jmp 0x10037623
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x244], 7
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10037612
mov dword [ebp - 0x14], ebx
jmp 0x1003767d
mov dword [ebp - 0x1c], 0x552bf338
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + eax*4 - 0x244]
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x244], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x244]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], 0xaa4
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x240], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jle 0x1003762d
mov dword [ebp - 0x24], 0x5a60915b
mov dword [ebp - 0x2c], 0xc93b4e1
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x2c], 0xffffffe5
jne 0x10037762
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x55c], eax
mov dword [ebp - 0x558], eax
mov dword [ebp - 0x554], eax
mov dword [ebp - 0x28], 0x759609c3
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x100376d7
push 0xb7e
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_CombineRgn]
mov dword [ebp - 0x28], ebx
jmp 0x1003774d
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x24], ebx
jmp 0x100376f1
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x734], edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x100376e4
mov dword [ebp - 0x18], ebx
jmp 0x1003770c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x560], 0x22a149ce
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x100376fb
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], ebx
jl 0x1003774a
mov dword [ebp - 0x1c], 0xadf1adb2
mov dword [ebp - 0x20], 0x25d2d915
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], ebx
jl 0x10037745
mov dword [ebp - 0x20], 0xffffffff
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x72c], eax
dec dword [ebp - 0x1c]
jns 0x10037730
dec dword [ebp - 0x18]
jns 0x1003771a
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jle 0x100376dc
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffe5
je 0x1003769e
xor edx, edx
inc edx
mov dword [ebp - 0x40], 0x7fa6fbaa
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x20], 0x85faafe3
mov dword [ebp - 0x24], 0xffffffee
jmp 0x100377cc
mov dword [ebp - 0x3c], 0xfffffffe
mov dword [ebp - 0x4c], 0xd45db34e
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x100377c3
push 0x178e
push 0x1ab3
push 0xa9
push 0x1dc9
push 0x115d
call dword [sym.imp.GDI32.dll_Ellipse]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x1a
jl 0x1003778d
inc dword [ebp - 0x20]
lea ecx, [ebp - 0x434]
push 4
pop esi
mov dword [ebp - 0x20], 0xf04a32a0
push esi
call fcn.1002a7d6
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x5dc]
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x20], 0x4801897a
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x20], 0x914d2edc
push edi
call fcn.1002a7d6
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x20], 0xe045
mov dword [ebp - 0x14], ebx
jmp 0x10037837
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x5dc]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10037828
xor ecx, ecx
mov dword [ebp - 0x14], ebx
inc ecx
jmp 0x10037855
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x618], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10037844
dec dword [ebp - 0x20]
lea ecx, [ebp - 0x5dc]
call fcn.1002add8
push 1
lea ecx, [ebp - 0x3d4]
call fcn.1002a7d6
xor edx, edx
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x24], ebx
inc edx
jmp 0x10037894
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3d4]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10037884
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x2c], ebx
jl 0x10037ab9
jmp 0x100378aa
xor edx, edx
inc edx
mov dword [ebp - 0x28], 0x33992443
mov dword [ebp - 0x20], 0x18af
cmp dword [ebp - 0x20], 0x704
jge 0x1003792c
push 0x11346ba8
push 0x11346bac
push 0x1000785c
call fcn.100539eb
mov eax, dword [0x11346bac]
add esp, 0xc
mov edi, ebx
test eax, eax
jle 0x10037929
mov esi, ebx
test eax, eax
jle 0x10037914
cmp edi, esi
jne 0x10037900
push dword [0x11346ba8]
push 0x10007854
call fcn.10053e49
pop ecx
jmp 0x1003790a
push 0x10007c0c
call fcn.10053e49
inc esi
pop ecx
cmp esi, dword [0x11346bac]
jl 0x100378e9
push 0x10007775
inc edi
call fcn.100545b2
mov eax, dword [0x11346bac]
pop ecx
cmp edi, eax
jl 0x100378e3
xor edx, edx
inc edx
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], ebx
jg 0x10037aad
jmp 0x1003793d
xor edx, edx
inc edx
mov dword [ebp - 0x24], ebx
jmp 0x10037953
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xa8], 0xfffffff7
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10037942
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10037969
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov dword [ebp - 0xa8], ebx
jmp 0x10037a95
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x20], 0x1682
cmp dword [ebp - 0x20], 0x9ae
jge 0x10037a6d
lea eax, [ebp - 0xe4]
push eax
push 0x1000780c
call fcn.100539eb
pop ecx
jmp 0x10037a57
dec eax
mov dword [ebp - 0xe4], eax
lea eax, [ebp - 0xd0]
push eax
push 0x1000780c
call fcn.100539eb
mov edi, ebx
mov esi, ebx
jmp 0x100379ff
dec eax
mov dword [ebp - 0xd0], eax
lea eax, [ebp - 0x188]
push eax
push 0x1000780c
call fcn.100539eb
xor eax, eax
cmp dword [ebp - 0x188], 1
sete al
add edi, eax
xor eax, eax
cmp dword [ebp - 0x188], 2
sete al
add esi, eax
mov eax, dword [ebp - 0xd0]
pop ecx
pop ecx
test eax, eax
jne 0x100379cb
dec eax
mov cl, 1
mov dword [ebp - 0xd0], eax
mov eax, edi
and eax, 0x80000001
jns 0x10037a22
dec eax
or eax, 0xfffffffe
inc eax
je 0x10037a28
mov cl, bl
jmp 0x10037a42
test edi, edi
jne 0x10037a42
and esi, 0x80000001
jns 0x10037a39
dec esi
or esi, 0xfffffffe
inc esi
push 0
movzx ecx, cl
pop eax
cmovne ecx, eax
test cl, cl
mov edx, 0x10007844
mov eax, 0x100078bc
cmove eax, edx
push eax
call fcn.100545b2
mov eax, dword [ebp - 0xe4]
pop ecx
test eax, eax
jne 0x100379ad
dec eax
mov dword [ebp - 0xe4], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3d4]
cmp dword [eax + ecx*4], ebx
jne 0x10037aa1
mov dword [ebp - 0x24], ebx
jmp 0x10037a8a
mov dword [ebp - 0x20], 0xffffffff
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x10037a80
inc dword [ebp - 0xa8]
cmp dword [ebp - 0xa8], ebx
jle 0x10037974
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ebx
jle 0x1003793a
dec dword [ebp - 0x2c]
jns 0x100378a7
push 3
pop edi
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10037ace
push ebx
push 0xab3
call dword [sym.imp.GDI32.dll_CreateHatchBrush]
lea ecx, [ebp - 0x3d4]
call fcn.1002add8
mov dword [ebp - 0x14], ebx
jmp 0x10037aef
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x168], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10037ade
mov dword [ebp - 0x2c], ebx
lea ecx, [ebp - 0x3ec]
push 1
call fcn.1002a7d6
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x518]
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x20], 0xb168f92
mov dword [ebp - 0x24], 0x27a4129b
push edi
call fcn.1002a7d6
xor edx, edx
mov dword [ebp - 0x14], ebx
inc edx
jmp 0x10037b45
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3ec]
mov dword [eax + ecx*4], 0x3638
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10037b32
mov dword [ebp - 0x14], ebx
jmp 0x10037b5f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x518]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10037b4f
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10037b89
push ebx
push ebx
push ebx
push 0x180
push 0x122c
push ebx
push 0x17f3
call dword [sym.imp.GDI32.dll_GetTextExtentExPointA]
xor edx, edx
inc edx
mov dword [ebp - 0x2c], 5
jmp 0x10037cdb
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x4c], 0x4ef66b17
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x3c], 0xfffffffd
mov dword [ebp - 0x1c], 0xe3bf118c
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 0x1c], 0xfffffffd
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x38], 0xd900
mov dword [ebp - 0x24], ebx
jmp 0x10037be6
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x294], 0xe2718b96
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10037bd5
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], ebx
jg 0x10037c91
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x24], ebx
jmp 0x10037c10
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x278], 0xfffffff8
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10037bff
inc dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1c]
neg edx
push 1
sbb edx, edx
xor ecx, ecx
neg edx
mov dword [ebp - 0x278], edx
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
cmp eax, edx
mov eax, dword [ebp - 0x2c]
setge cl
sub eax, ecx
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xfec1
setne cl
xor eax, eax
cmp ecx, 0xa205
setg al
imul ecx, eax, 0x83a0
sub ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3ec]
neg ecx
sbb ecx, ecx
inc ecx
mov edx, dword [eax + esi*4]
mov eax, dword [ebp - 0x3c]
sub edx, ecx
sub edx, eax
xor eax, eax
cmp edx, 0xb705
pop edx
setl al
mov dword [ebp - 0x294], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x10037bf7
mov dword [ebp - 0x24], 0x10
jmp 0x10037cd2
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x4c], ebx
jne 0x10037cd8
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp eax, 0x5f5a
mov eax, dword [ebp - 0x518]
setge cl
mov dword [eax], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x1b
jge 0x10037c9a
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xa
jg 0x10037b95
lea ecx, [ebp - 0x518]
call fcn.1002add8
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 4], bl
call fcn.1002add8
mov dword [ebp - 0x14], ebx
jmp 0x10037d16
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x434]
mov dword [eax + ecx*4], 0xf905
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10037d03
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xc92ea21e
jae 0x10037d40
cmp dword [ebp - 0x30], ebx
jne 0x10037d40
xor edx, edx
mov eax, ebx
inc edx
jmp 0x10037d45
xor edx, edx
inc edx
mov eax, edx
mov ecx, dword [ebp - 0x30]
mov esi, 0xffff
imul ecx, eax
mov eax, edx
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, 0x2395e2de
setne cl
xor eax, eax
cmp ecx, 0x6aa1c33c
setge al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
je 0x100384ae
push 4
pop eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], ebx
jmp 0x10037d9a
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x180], 0x229e
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jl 0x10037d89
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10037dbb
push 0xab8
push 0x1310
call dword [sym.imp.USER32.dll_SetCaretPos]
xor edx, edx
inc edx
mov dword [ebp - 0x28], 0xfffffff7
cmp dword [ebp - 0x28], 8
jle 0x10037ed1
jmp 0x10037dd1
mov dword [ebp - 0x34], 0x88ad
lea ecx, [ebp - 0x2c8]
push 2
call fcn.1002a7d6
mov dword [ebp - 0x14], ebx
jmp 0x10037efd
push 2
lea ecx, [ebp - 0x5f0]
call fcn.1002a7d6
mov dword [ebp - 0x1c], 0x490c4d8e
mov dword [ebp - 0x34], ebx
jmp 0x100384da
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x5f0]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 2
jl 0x100384c7
mov dword [ebp - 0x1c], 1
cmp dword [ebp - 0x1c], ebx
jl 0x1003850c
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10038507
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
dec dword [ebp - 0x1c]
jns 0x100384ec
lea ecx, [ebp - 0x5f0]
call fcn.1002add8
mov dword [ebp - 0x20], 0x86adb69c
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x20], 0x16488a97
mov dword [ebp - 0x3c], 0xd580090a
mov dword [ebp - 0x34], ebx
jmp 0x10038545
cmp dword [ebp - 0x34], edi
jl 0x10038534