Function at 0x1005789b
Capabilities:
Enumerate gui resources

Disassembly:
mov eax, 0x1007d0ec
call fcn.1007b960
sub esp, 0x23c
push ebx
or eax, 0xffffffff
mov byte [ebp - 0x4d], dl
mov dword [ebp - 0x20], eax
xor ebx, ebx
mov dword [ebp - 0x44], 0xfffffff8
push esi
mov dword [ebp - 0x18], 0xa41b8700
push edi
mov dword [ebp - 0x30], 0x371
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x14], ebx
jmp 0x100578e3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x74], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100578d9
mov eax, dword [ebp - 0x20]
xor edi, edi
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
inc edi
mov eax, dword [ebp - 0x20]
cmp eax, edi
mov eax, dword [ebp - 0x20]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, 0x758e
setle cl
xor edx, edx
sub eax, ecx
mov dword [ebp - 0x20], eax
imul eax, dword [ebp - 0x20], 0x59ec
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x44]
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]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x6c]
cmp eax, ecx
setle dl
cmp edx, dword [ebp - 0x18]
jge 0x10057a9e
cmp dword [ebp - 0x6c], ebx
je 0x10057a9e
push dword [ebp + 8]
movdqa xmm0, xmmword [0x1000cd60]
lea eax, [ebp - 0x1ac]
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0xdc], ebx
push eax
push ebx
lea ecx, [ebp - 0xdc]
mov dword [ebp - 0xd8], ebx
movdqu xmmword [ebp - 0x1bc], xmm0
mov dword [ebp - 0xd4], ebx
call fcn.1002d9d9
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x30], 0xcd219fa4
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x44], 0x6529
cmp dword [eax], ebx
je 0x100579d6
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x30], 0xfffffffa
mov dword [ebp - 0x30], 0xafa0b2b0
inc dword [ebp - 0x44]
push 2
pop esi
lea ecx, [ebp - 0xdc]
call fcn.10028080
jmp 0x10057b0e
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], bl
je 0x100579c3
mov dword [ebp - 0x2c], 0x13cd
cmp dword [ebp - 0x2c], 0x455
jge 0x10057a8d
lea eax, [ebp - 0x78]
push eax
push 0x1000b300
call fcn.100634cb
pop ecx
pop ecx
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x14], ebx
push 2
pop esi
mov dword [ebp - 0x34], esi
test ecx, ecx
jle 0x10057a90
mov eax, ecx
cdq
sub eax, edx
mov edi, eax
sar edi, 1
sub edi, dword [ebp - 0x14]
jns 0x10057a25
neg edi
mov eax, ebx
mov dword [ebp - 0x44], eax
test ecx, ecx
jle 0x10057a6f
mov ebx, dword [ebp - 0x38]
cmp eax, edi
jl 0x10057a4a
sub ecx, edi
cmp eax, ecx
jge 0x10057a4a
push ebx
push 0x1000b318
call fcn.100636ff
add ebx, esi
jmp 0x10057a5a
push dword [ebp - 0x34]
push 0x1000b318
call fcn.100636ff
add dword [ebp - 0x34], esi
mov eax, dword [ebp - 0x44]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x44], eax
cmp eax, ecx
jl 0x10057a31
mov dword [ebp - 0x38], ebx
xor ebx, ebx
push 0x1000b0d5
call fcn.10063d76
mov eax, dword [ebp - 0x14]
pop ecx
mov ecx, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, ecx
jl 0x10057a15
xor edi, edi
inc edi
jmp 0x10057a90
push 2
pop esi
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_EnumResourceTypesW]
jmp 0x100579c6
push 2
mov dword [ebp - 0x2c], 0xfffffff6
pop esi
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], ebx
jl 0x10057b0e
mov dword [ebp - 0x44], 0xc7f5175d
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x74]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x74], ecx
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], ebx
jl 0x10057b09
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x74]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x74]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x74]
mov dword [ebp - 0x44], ebx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x74]
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x74], ecx
cmp dword [ebp - 0x2c], ebx
jne 0x10057b09
dec dword [ebp - 0x20]
jns 0x10057acd
dec dword [ebp - 0x18]
jns 0x10057ab0
mov dword [ebp - 0x24], 0x48bbca63
mov dword [ebp - 0x30], 0xaeb9
mov dword [ebp - 0x24], ebx
jmp 0x10057b7a
mov dword [ebp - 0x14], ebx
jmp 0x10057b33
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x168], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10057b26
mov dword [ebp - 0x164], ebx
cmp dword [ebp - 0x164], ebx
je 0x10057b62
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10057b5a
push 0x6a0
call dword [sym.imp.GDI32.dll_GetStockObject]
inc dword [ebp - 0x164]
jne 0x10057b46
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10057b77
push ebx
push 0x1c8e
call dword [sym.imp.USER32.dll_ClientToScreen]
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xe
push 4
pop ecx
jne 0x10057b21
mov eax, dword [0x100828bc]
lea ecx, [ebp - 0xbc]
push dword [ebp + 8]
movdqa xmm0, xmmword [0x1000cd90]
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x19c]
mov dword [ebp - 0x20], 8
push eax
push ebx
movdqu xmmword [ebp - 0x19c], xmm0
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0xb4], ebx
call fcn.1002d9d9
mov dword [ebp - 4], ebx
mov dword [ebp - 0x48], 9
mov dword [ebp - 0x14], ebx
jmp 0x10057bf1
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x14c], 0xec0ae971
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10057be0
mov dword [ebp - 0x20], ebx
jmp 0x10057c0f
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10057c0c
push ebx
call dword [sym.imp.GDI32.dll_GetObjectType]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x10057bfc
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], esi
jg 0x10057d1a
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x2c], eax
push 3
lea ecx, [ebp - 0x128]
call fcn.10027ffe
mov dword [ebp - 0x38], 0xa53061ec
mov dword [ebp - 0x14], ebx
jmp 0x10057c55
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x128]
mov dword [eax + ecx*4], 0xa6deec54
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10057c42
mov edx, dword [ebp - 0x128]
mov dword [edx + 4], ebx
mov dword [ebp - 0x34], 0x44401d1b
mov dword [ebp - 0x40], 0x6a81d68c
mov dword [ebp - 0x14], ebx
jmp 0x10057c88
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1e4], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10057c77
mov eax, dword [edx + 4]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x14c]
sub eax, dword [ebp - 0x34]
cmp eax, dword [edx + 4]
setge cl
mov dword [ebp - 0x38], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x38]
cmp eax, edi
mov eax, dword [ebp - 0x2c]
setg cl
add ecx, 0x6941
mov dword [eax + 0xc], ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + eax*4 - 0x14c]
mov eax, dword [ebp - 0x48]
dec eax
neg eax
sbb eax, eax
inc eax
add ecx, eax
mov dword [ebp - 0x34], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x40]
mov eax, dword [edx + 4]
mov eax, dword [ebp + eax*4 - 0x14c]
mov eax, dword [ebp - 0x48]
cmp eax, edi
setg cl
inc dword [edx + 4]
mov dword [ebp - 0x1e4], ecx
cmp dword [edx + 4], esi
jle 0x10057c64
lea ecx, [ebp - 0x128]
call fcn.10028080
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x10057c29
or eax, 0xffffffff
lea ecx, [ebp - 0xbc]
mov dword [ebp - 4], eax
call fcn.10028080
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x34], 0x782a1836
mov dword [ebp - 0x24], 0xfffa
mov dword [ebp - 0x28], 0xcd333563
mov dword [ebp - 0x48], 0xfffffff7
mov dword [ebp - 0x20], 0x5661c443
mov dword [ebp - 0x2c], 3
mov dword [ebp - 0x38], 8
push 4
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
call fcn.10027ffe
mov dword [ebp - 4], edi
mov dword [ebp - 0x18], ebx
jmp 0x10057d89
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x58], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10057d7f
push 3
mov dword [ebp - 0x18], ebx
pop ecx
jmp 0x10057da7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa4], 8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10057d96
mov dword [ebp - 0x18], ebx
jmp 0x10057dbe
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1d8], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10057db1
push 4
mov dword [ebp - 0x18], ebx
pop edx
jmp 0x10057dda
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x134]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10057dcb
dec dword [ebp - 0x24]
mov ecx, 0x981c5860
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x48]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
sbb ecx, ecx
inc ecx
dec eax
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, 0xffff
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x24]
setg cl
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x58]
neg edx
sbb edx, edx
inc edx
neg edx
neg edx
sbb edx, edx
neg edx
cmp edx, dword [ebp - 0x48]
jle 0x10057e3a
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x58]
jg 0x10057e4f
mov edx, ebx
cmp dword [ebp - 0xa4], ebx
je 0x10057e51
mov edx, edi
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x24], ebx
jl 0x10057f3d
mov dword [ebp - 0x24], ebx
xor edx, edx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], 0xfffffff9
mov eax, dword [ebp - 0x24]
or eax, 0xffffffff
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
push 0xfffffffffffffffc
setle dl
xor eax, eax
cmp edx, 0x720f
pop edx
setge al
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0xa0]
cmp eax, dword [ebp - 0x2c]
setne cl
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x24]
dec eax
neg eax
sbb eax, eax
neg eax
sub eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
sub edx, eax
mov eax, dword [ebp - 0x34]
cmp edx, eax
setge cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x34]
neg eax
jne 0x10057f1e
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x38]
neg eax
sbb eax, eax
inc eax
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x58], eax
jmp 0x100580b0
mov dword [ebp - 0x14], 0xde17a8f3
or eax, 0xffffffff
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x40], 0x4f22
cmp dword [ebp - 0x40], 0x4f32
jle 0x10058008
mov ecx, ebx
mov dword [ebp - 0x48], ebx
mov eax, ebx
mov dword [ebp - 0x4c], ebx
mov esi, ecx
mov edx, ebx
mov ecx, eax
mov dword [ebp - 0x18], edx
shl esi, cl
mov dword [ebp - 0x3c], esi
mov esi, ebx
mov eax, edx
lea ecx, [ebp - 0x22c]
cdq
idiv esi
and edx, dword [ebp - 0x3c]
mov eax, edx
cdq
push edx
push eax
call fcn.1000e3f2
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10057f9d
mov eax, dword [eax]
push eax
call fcn.100636ff
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x22c]
call fcn.1002885d
mov edx, dword [ebp - 0x18]
inc esi
cmp esi, 0x5ab0
jl 0x10057f7b
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0xc4c
jl 0x10057f79
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x4c], eax
cmp eax, 0x23b5
jl 0x10057f6b
inc ecx
mov dword [ebp - 0x48], ecx
cmp ecx, 0x6c83
jl 0x10057f66
push 0x62c
push 0xf46
push 0xa1c
push 0x1893
push 0x46c
call dword [sym.imp.GDI32.dll_Ellipse]
push 2
pop esi
mov byte [ebp - 0x19], bl
cmp dword [ebp - 0x40], 0x4bd9
jge 0x1005801f
push 0x1000caa0
call fcn.100636ff
pop ecx
cmp byte [ebp - 0x19], 0
je 0x10058037
push edi
push ebx
push 0x2d0
push 0x1fc0
call dword [sym.imp.USER32.dll_GetDlgItemInt]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x14], ebx
jne 0x1005805c
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x34]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x38]
jle 0x10058055
mov eax, dword [ebp - 0x1d4]
mov ecx, ebx
cmp dword [ebp - 0x14], ebx
jne 0x1005805e
mov ecx, edi
xor eax, eax
cmp ecx, 0x5504
mov ecx, 0x9c96
setl al
xor edx, edx
sub ecx, eax
mov eax, dword [ebp - 0x134]
cmp ecx, dword [eax + 4]
mov eax, dword [ebp - 0x14]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
sub ecx, eax
xor eax, eax
cmp ecx, edi
setle al
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
or eax, 0xffffffff
lea ecx, [ebp - 0x134]
mov dword [ebp - 4], eax
call fcn.10028080
mov dword [ebp - 0x48], 0x1cd8
cmp dword [ebp - 0x48], 0x1eff
jle 0x10058123
mov ecx, ebx
mov dword [ebp - 0x38], ebx
mov esi, ebx
mov eax, esi
and eax, ecx
lea ecx, [ebp - 0x1fc]
cdq
push edx
push eax
call fcn.1000e3f2
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100580f4
mov eax, dword [eax]
push eax
call fcn.100636ff
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x1fc]
call fcn.1002885d
mov ecx, dword [ebp - 0x38]
inc esi
cmp esi, 0x54d5
jl 0x100580d8
inc ecx
mov dword [ebp - 0x38], ecx
cmp ecx, 0x1ceb
jl 0x100580d6
push 2
pop esi
cmp byte [ebp - 0x4d], 0
je 0x10058537
cmp dword [ebp - 0x44], edi
jne 0x10058537
mov dword [ebp - 0x2c], 0x6a95
cmp dword [ebp - 0x2c], 0x6c8a
jle 0x10058195
mov eax, ebx
mov dword [ebp - 0x38], ebx
mov esi, ebx
add eax, esi
lea ecx, [ebp - 0x214]
cdq
push edx
push eax
call fcn.1000e3f2
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10058167
mov eax, dword [eax]
push eax
call fcn.100636ff
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x214]
call fcn.1002885d
mov eax, dword [ebp - 0x38]
inc esi
cmp esi, 0x7b7a
jl 0x1005814d
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x7e35
jl 0x1005814b
push 2
pop esi
cmp dword [ebp - 0x2c], 0x66b7
jge 0x100581a9
push 0x1000cb38
call fcn.100636ff
pop ecx
or eax, 0xffffffff
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], eax
lea eax, [ebp - 0x1bc]
push dword [ebp + 8]
movdqa xmm0, xmmword [0x1000cd70]
push eax
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x18], 6
push eax
push ebx
movdqu xmmword [ebp - 0x1cc], xmm0
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
call fcn.1002d9d9
mov dword [ebp - 4], 6
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x20], 0xee676845
push 3
call fcn.10027ffe
mov byte [ebp - 4], 7
mov dword [ebp - 0x38], 0x49124c6e
mov dword [ebp - 0x14], ebx
jmp 0x10058227
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xec]
mov dword [eax + ecx*4], 0x589afca8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10058214
cmp dword [ebp - 0x18], ebx
je 0x1005825f
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x18]
mov dword [edx + 4], ecx
sub ecx, eax
jne 0x10058245
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp dword [edx + 4], ebx
jne 0x10058254
mov ecx, ebx
cmp dword [ebp - 0x18], ebx
je 0x10058256
mov ecx, edi
mov eax, dword [ebp - 0x18]
add eax, ecx
mov eax, edi
jne 0x10058261
mov eax, ebx
mov edx, dword [ebp - 0x18]
sub edx, eax
mov eax, dword [ebp - 0x18]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
sete cl
imul eax, ecx, 0xfc2e
cmp eax, dword [ebp - 0x18]
jge 0x1005828a
mov eax, dword [ebp - 0x68]
mov edx, edi
cmp dword [eax + 4], ebx
jne 0x1005828c
mov edx, ebx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 3
jg 0x10058513
mov dword [ebp - 0x28], 0x2046130
or eax, 0xffffffff
mov dword [ebp - 0x14], 0xfffffff7
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x100582d3
push 0x723
push 0x1e26
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x1005850b
mov dword [ebp - 0x24], 0x8993dd61
lea ecx, [ebp - 0x158]
push 3
call fcn.10027ffe
mov byte [ebp - 4], 8
mov dword [ebp - 0x14], ebx
jmp 0x10058313
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x158]
mov dword [eax + ecx*4], 0x3fe686b7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10058300
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 3
jg 0x100584f4
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x68]
cmp dword [eax + ecx*4], ebx
je 0x10058397
mov eax, dword [ebp - 0xec]
or dword [eax], 0xffffffff
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x68]
cmp dword [eax + ecx*4], 0xfffa
ja 0x10058359
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x68]
cmp dword [eax + ecx*4], ebx
mov eax, ebx
je 0x1005835b
mov eax, edi
mov edx, dword [ebp - 0x20]
cmp esi, eax
mov eax, dword [ebp - 0x68]
sbb ecx, ecx
inc ecx
push 0
cmp dword [eax + edx*4], ecx
mov eax, dword [ebp - 0x24]
pop edx
sete dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xfa870c38
setge cl
cmp eax, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x38], eax
jmp 0x1005849e
mov dword [ebp - 0x3c], 0xb799e604
mov dword [ebp - 0x28], ebx
jmp 0x100583d1
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x100583ce
push ebx
push 0x24a2
push ebx
push ebx
push 0x1518
push 0x207b
push 0x307
push 0x16ab
call dword [sym.imp.GDI32.dll_ExtTextOutA]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 3
jle 0x100583a3
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 3
jg 0x1005849b
mov dword [ebp - 0x4c], 0x4848
cmp dword [ebp - 0x4c], 0x496b
jle 0x10058445
mov eax, ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x2c], eax
mov esi, 0x2870
cdq
lea ecx, [ebp - 0x244]
push edx
push eax
call fcn.1000e3f2
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10058419
mov eax, dword [eax]
push eax
call fcn.100636ff
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x244]
call fcn.1002885d
mov eax, dword [ebp - 0x2c]
dec eax
mov dword [ebp - 0x2c], eax
dec esi
jne 0x10058401
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, 0x7bf3
jl 0x100583f9
mov dword [ebp - 0x2c], 0xffff
cmp dword [ebp - 0x4c], 0x452a
jge 0x10058460
push 0x1000cb88
call fcn.100636ff
pop ecx
mov dword [ebp - 4], 8
xor edx, edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x68]
cmp eax, dword [ecx]
setne dl
imul eax, dword [ecx + 4], 0xfffe
sub eax, 0xede520b
cmp eax, edx
jg 0x1005848b
mov eax, edi
cmp dword [ebp - 0x24], ebx
jne 0x1005848d
mov eax, ebx
imul eax, eax, 0xfffffffc
mov dword [ebp - 0x2c], eax
inc dword [ebp - 0x14]
jmp 0x100583da
push 2
pop esi
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
neg ecx
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xec]
cmp dword [eax], ebx
je 0x100584e1
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x68]
cmp dword [eax + ecx*4], ebx
je 0x100584e1
mov ecx, edi
cmp dword [ebp - 0x34], ebx
jne 0x100584e3
mov ecx, ebx
mov eax, dword [ebp - 0x158]
mov dword [eax + 4], ecx
inc dword [ebp - 0x24]
jmp 0x1005831c
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 7
call fcn.10028080
dec dword [ebp - 0x20]
jmp 0x100582da
inc dword [ebp - 0x18]
jmp 0x1005829c
lea ecx, [ebp - 0xec]
call fcn.10028080
lea ecx, [ebp - 0x68]
call fcn.10028080
mov eax, dword [ebp + 8]
mov dword [eax + 8], 4
mov dword [eax + 0xc], 0x100828bc
cmp dword [ebp - 0x48], 0x1c16
jge 0x1005854b
push 0x1000cae8
call fcn.100636ff
pop ecx
or eax, 0xffffffff
mov dword [ebp - 4], eax
push 4
mov dword [ebp - 0x18], 0x643cdf98
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x10058571
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x110], 0xc93b4e1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10058560
mov dword [ebp - 0x18], 3
cmp dword [ebp - 0x18], ebx
jl 0x10058710
mov dword [ebp - 0x14], 0xfffffffd
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x30], 0xa41b8700
mov dword [ebp - 0x30], 0xfffffffc
mov dword [ebp - 0x30], 7
mov dword [ebp - 0x30], 0xac3efc16
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x30], 0xd423cb8e
mov dword [ebp - 0x30], 0x3a34071e
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x30], 0x45db0ff8
push edi
call fcn.10027ffe
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x38], 0x99991913
mov dword [ebp - 0x14], ebx
jmp 0x100585f2
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x174]
mov dword [eax + ecx*4], 0x1361131e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100585df
push 3
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x100586e0
mov dword [ebp - 0x20], 0x51da622a
mov dword [ebp - 0x20], ebx
jmp 0x100586a0
mov dword [ebp - 0x24], 0xfffffffe
mov dword [ebp - 0x24], ebx
jmp 0x10058698
mov dword [ebp - 0x28], 0x40ed3c15
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], ebx
jl 0x10058689
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
mov ecx, 0x8fb0b44c
setle dl
mov eax, dword [ebp + eax*4 - 0x110]
cmp ecx, eax
sbb eax, eax
inc eax
add edx, eax
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x110]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setl cl
mov dword [ebp + eax*4 - 0x110], ecx
dec dword [ebp - 0x28]
jns 0x1005862f
push 3
pop ecx
mov eax, dword [ebp - 0x24]
cmp dword [ebp + eax*4 - 0x110], ebx
jne 0x1005869d
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jle 0x1005861d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jle 0x10058611
mov dword [ebp - 0x20], ebx
jmp 0x100586d8
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x100586d5
push ebx
push 0x19d2
push 0x4c1
push 0x13cb
push 0x1f48
call dword [sym.imp.GDI32.dll_CreateBitmap]
push 3
pop ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jle 0x100586ae
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jle 0x10058602
mov eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x174]
inc dword [ebp - 0x38]
cmp eax, esi
mov eax, edi
cmovae eax, ebx
mov dword [ebp - 0x108], eax
call fcn.10028080
dec dword [ebp - 0x18]
jns 0x10058586
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1005872a
push 0x52d
push 0xdcd
push ebx
call dword [sym.imp.USER32.dll_RemoveMenu]
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x54], eax
jge 0x10058ff0
mov dword [ebp - 0x18], 0xde05dae5
push 3
pop ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x3c], 0x3e93d0b5
mov dword [ebp - 0x14], 0x48f4a8fe
mov dword [ebp - 0x4c], 0xcb2c
mov dword [ebp - 0x14], ebx
jmp 0x10058771
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x90], 0x29ef4a04
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10058760
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
push 0xfffffffffffffffc
setl dl
sub edx, 0xffff
neg edx
sbb edx, edx
inc edx
add edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
neg edx
mov dword [ebp - 0x3c], edx
xor edx, edx
cmp dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x18]
setl dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xb6318d58
setne cl
cmp eax, ecx
pop ecx
sbb eax, eax
neg eax
cmp ecx, eax
mov eax, dword [ebp - 0x18]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setge cl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], ebx
jmp 0x10058a4f
push dword [ebp + 8]
movdqa xmm0, xmmword [0x1000cdb0]
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x1ac]
mov dword [ebp - 0x40], edi
push eax
push ebx
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xd0], ebx
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xc8], ebx
call fcn.1002d9d9
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x30], 0x46dff617
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], 0xa4ac155e
push 4
call fcn.10027ffe
push 4
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x10058864
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x11c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10058855
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], ebx
jl 0x1005891c
mov esi, dword [ebp - 0xd0]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x3c], 0xccfdef05
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x90], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x90]
test eax, eax
setne cl
xor edx, edx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
sete dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x90]
cmp edx, eax
setle cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x18]
imul ecx, dword [ebp + eax*4 - 0x90]
xor eax, eax
dec ecx
cmp ecx, edi
setl al
xor ecx, ecx
cmp eax, 0x34d89bb6
setl cl
imul ecx, dword [esi + 8]
mov dword [ebp - 0x3c], ecx
dec dword [ebp - 0x20]
jns 0x1005887b
push 2
pop esi
mov dword [ebp - 0x14], ebx
jmp 0x10058a26
mov dword [ebp - 0x2c], 7
or eax, 0xffffffff
mov dword [ebp - 0x48], 0x8040
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x20], ebx
jmp 0x1005894e
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xc4], 0xd9e6264a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1005893d
mov dword [ebp - 0x20], ebx
jmp 0x100589be
mov dword [ebp - 0x3c], 0xdb22c08f
mov dword [ebp - 0x5c], 0xce4ca00a
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setg dl
xor ecx, ecx
sub edx, 0x422e76d1
cmp edx, 0x25a1b582
setge cl
sub eax, ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x3c]
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
imul eax, ecx, 0x6189
mov dword [ebp - 0xc4], eax
inc dword [ebp - 0x4c]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 8
jl 0x10058958
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 0x1a
jge 0x10058a23
mov esi, dword [ebp - 0x11c]
mov dword [ebp - 0x3c], 0x5dbe4b24
cmp dword [ebp - 0x48], ebx
je 0x100589e8
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
cmp dword [esi + 4], edi
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0xc4]
jge 0x10058a00
mov eax, ebx
cmp dword [ebp - 0x30], ebx
je 0x10058a02
mov eax, edi
mov edx, dword [ebp - 0x3c]
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x24]
cmp edx, eax
setle cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x38]
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x1a
jl 0x100589d3
push 2
pop esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 6
jg 0x10058924
lea ecx, [ebp - 0x11c]
call fcn.10028080
or eax, 0xffffffff
lea ecx, [ebp - 0xd0]
mov dword [ebp - 4], eax
call fcn.10028080
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x100587e0
mov eax, 0x100828bc
mov dword [ebp - 0x14], 0xfffffffc
add eax, 4
mov dword [ebp - 0x14], 0x17
mov dword [ebp - 0x20], eax
jmp 0x10058a83
cmp byte [ebp - 0x19], 0
je 0x10058a80
push ebx
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffffb
mov byte [ebp - 0x19], bl
je 0x10058a73
cmp byte [ebp - 0x19], 0
je 0x10058aa4
push ebx
push 0x2408
push ebx
push 0xf77
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
cmp dword [ebp - 0x54], 0
jle 0x10058c58
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x24], 0xffffffe9
cmp dword [ebp - 0x24], 0x13
jg 0x10058b04
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x14], 6
jmp 0x10058af2
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10058aef
push 0x1cbc
push ebx
push 0x5d5
push ebx
push ebx
push 0x22
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffea
jle 0x10058ad1
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x13
jle 0x10058ac5
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx]
lea ecx, [ebp - 0x180]
mov dword [ebp - 0x2c], 0xf782
mov dword [ebp - 0x30], 5
mov dword [ebp - 0x5c], 0x250db856
push edi
mov dword [ebp - 0x3c], eax
call fcn.10027ffe
mov dword [ebp - 0x18], ebx
jmp 0x10058b42
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x180]
mov dword [eax + ecx*4], 0xe9fb1c03
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10058b2f
mov dword [ebp - 0x18], ebx
jmp 0x10058b5d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x18c], 6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10058b4c
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0x10d21dfe
setge cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x180]
dec dword [ebp - 0x188]
call fcn.10028080
mov esi, dword [ebp - 0x20]
add esi, 4
or eax, 0xffffffff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x14], ebx
jmp 0x10058baa
mov dword [ebp - 0x30], 0x6e87
cmp dword [ebp - 0x30], ebx
jne 0x10058bb0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 8
jl 0x10058b9b
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10058bc8
push ebx
push 0xc0a
call dword [sym.imp.USER32.dll_RemovePropA]
or eax, 0xffffffff
mov esi, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x14], 0x39beb064
mov dword [ebp - 0x2c], 0x4e1265ab
mov dword [ebp - 0x30], 0x1245c810
mov dword [ebp - 0x5c], 0xe39f3faa
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x5c], 5
mov dword [ebp - 0x5c], 9
mov dword [ebp - 0x40], 0xfffffffd
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0xa8d3
mov eax, dword [ebp - 0x14]
setne cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x20]
push 4
setg dl
imul edx, dword [ebp - 0x14]
pop eax
neg edx
sbb edx, edx
add ecx, eax
neg edx
mov dword [ebp - 0x30], edx
dec dword [ebp - 0x40]
test esi, esi
jne 0x10058c46
lea ecx, [ecx + eax*2]
add ecx, dword [ebp - 0x3c]
dec dword [ebp - 0x54]
mov dword [ebp - 0x20], ecx
jne 0x10058ab1
push 2
pop esi
mov dword [ebp - 0x18], 0x862fd41e
mov dword [ebp - 0x30], 0x355c0c8f
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xffffffeb
jg 0x10058d1b
or edi, 0xffffffff
mov dword [ebp - 0x24], edi
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x38], ebx
push esi
call fcn.10027ffe
mov dword [ebp - 0x14], ebx
jmp 0x10058ca0
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x140]
mov dword [eax + ecx*4], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10058c8d
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x140]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp eax, edx
setle cl
xor edx, edx
sub ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setl dl
xor ecx, ecx
cmp eax, edx
setge cl
sub dword [ebp - 0x24], ecx
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10058d00
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
lea ecx, [ebp - 0x140]
call fcn.10028080
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffeb
jle 0x10058c76
xor edi, edi
inc edi
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xfffffffe
jg 0x10058d33
or eax, 0xffffffff
mov dword [ebp - 0x30], eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffffe
jle 0x10058d27
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx]
add ecx, 4
mov dword [ebp - 0x14], eax
or eax, 0xffffffff
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], 0xfffffffc
mov dword [ebp - 0x34], 0x207647f1
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x24], ebx
jmp 0x10058d74
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x98], edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x10058d67
mov dword [ebp - 0x18], ebx
jmp 0x10058da5
mov dword [ebp - 0x38], 0x170cd509
cmp dword [ebp - 0x38], ebx
jne 0x10058d99
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x16
je 0x10058d7e
cmp dword [ebp - 0x34], ebx
je 0x10058df9
cmp dword [ebp - 0x18], ebx
je 0x10058dba
cmp dword [ebp - 0x34], ebx
jne 0x10058dc1
mov edx, ebx
cmp dword [ebp - 0x28], ebx
je 0x10058dc3
mov edx, edi
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x34], ecx
mov ecx, 0xfff6
mov eax, dword [ebp - 0x94]
sub ecx, eax
mov eax, dword [ebp - 0x34]
add eax, ecx
mov ecx, dword [ebp - 0x28]
neg ecx
sub ecx, eax
neg ecx
sbb ecx, ecx
add ecx, 0x43a64e7a
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
xor edx, edx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x94]
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x30]
setg cl
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setl dl
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x94]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x94]
setge cl
imul eax, ecx
or ecx, 0xffffffff
cmp ecx, eax
mov eax, dword [ebp - 0x94]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setne cl
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx]
add ecx, 4
mov dword [ebp - 0x18], 0x29729cf3
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x30], 0x39c9d940
mov dword [ebp - 0x2c], 5
mov dword [ebp - 0x3c], 7
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
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]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x3c], edi
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10058eea
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
cmp dword [ebp - 0x40], 0
jne 0x10058ff0
cmp byte [ebp - 0x4d], 0
mov ecx, dword [ebp - 0x14]
je 0x10058f0e
cmp dword [ebp - 0x44], edi
jne 0x10058f0e
mov edx, dword [ebp + 8]
push 4
pop eax
lea eax, [ecx + eax*4]
add dword [edx + 8], eax
mov edx, dword [ebp - 0x20]
push ecx
mov eax, dword [edx]
mov dword [ebp - 0x2c], eax
mov eax, dword [edx + 4]
add edx, 8
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], edx
call fcn.1005eaad
pop ecx
mov dword [ebp - 0x4c], eax
lea ecx, [ebp - 0x84]
lea eax, [ebp - 0xe0]
mov dword [ebp - 0xe0], ebx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
call fcn.1005d07c
mov ecx, dword [ebp - 0x14]
mov edx, ebx
mov dword [ebp - 0x40], ebx
test ecx, ecx
jle 0x10058fc8
mov esi, dword [ebp - 0x84]
mov eax, edx
and eax, 0x80000001
jns 0x10058f73
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x2c]
add eax, edx
add eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x30]
cdq
idiv ecx
cmp word [esi + edx*2], bx
je 0x10058fa7
mov edi, dword [ebp - 0x84]
lea eax, [edx + 1]
cdq
idiv ecx
cmp word [edi + edx*2], bx
jne 0x10058f92
mov esi, dword [ebp - 0x84]
xor edi, edi
inc edi
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x4c]
mov word [esi + edx*2], di
mov al, byte [edx + eax]
mov edx, dword [ebp - 0x40]
mov byte [edx + ecx], al
inc edx
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x40], edx
cmp edx, ecx
jl 0x10058f65
push 2
pop esi
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x4c]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x84]
mov dword [edx], ecx
test eax, eax
je 0x10058ff0
push eax
call fcn.10063bed
pop ecx
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
push esi
lea ecx, [ebp - 0xf8]
call fcn.10027ffe
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x54], 0x491ba6b4
push 3
pop edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x14], 0x4667120
mov dword [ebp - 0x34], 0xc84132d3
mov dword [ebp - 0x20], 0x535dd253
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x40], 7
mov dword [ebp - 0x18], 0xa2f725dc
mov dword [ebp - 0x3c], 0x3a68
mov dword [ebp - 0x20], ebx
jmp 0x10059055
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xf8]
mov dword [eax + ecx*4], 9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10059042
mov dword [ebp - 0x20], ebx
jmp 0x10059070
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xb0], 0x3fe6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x1005905f
mov dword [ebp - 0x2c], 0x1492
cmp dword [ebp - 0x2c], 0x1510
jle 0x100590b3
mov edi, ebx
mov dword [ebp - 0x30], ebx
mov eax, ebx
mov ecx, 0x10623738
and eax, edi
cdq
push edx
push eax
call fcn.10027de2
inc ebx
cmp ebx, 0x232a
jl 0x1005908a
inc edi
push 0
pop ebx
cmp edi, 0x144d
jl 0x10059087
xor edi, edi
inc edi
mov eax, dword [ebp - 0xf8]
mov dword [eax], 0x21f9
mov eax, dword [ebp - 0x54]
neg eax
sbb eax, eax
xor edx, edx
neg eax
cmp eax, 3
mov eax, dword [ebp - 0x54]
sete dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x54], ecx
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setg dl
xor eax, eax
add edx, dword [ebp - 0xa8]
or ecx, 0xffffffff
cmp edx, ecx
setle al
xor ecx, ecx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0xb0]
cmp dword [ebp - 0x30], eax
setg cl
mov dword [ebp - 0x14], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xf8]
cmp dword [eax], ebx
mov eax, dword [ebp - 0xa8]
setne cl
xor edx, edx
cmp ecx, edi
setg dl
xor ecx, ecx
sub edx, 0x63b4fa11
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x34]
add edx, dword [ebp - 0xa8]
mov dword [ebp - 0x40], edx
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x2c], 0x10db
jge 0x100591b2
mov edx, 0x1000cbe8
mov ecx, 0x10623738
call fcn.1002cb18
jmp 0x100591b2
mov dword [ebp - 0x24], ebx
jmp 0x1005927a
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x34], ebx
jmp 0x100591d6
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x100], 0x84a8988e
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], esi
jl 0x100591c5
cmp dword [ebp - 0x18], ebx
jne 0x100591fe
mov eax, dword [ebp - 0x40]
mov edx, ebx
mov eax, dword [ebp - 0x4c]
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
add eax, 7
cmp eax, 0xfffffffe
setge cl
cmp ecx, 0xfffffffa
jae 0x10059200
mov edx, edi
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
sete cl
xor edx, edx
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
mov ecx, dword [ebp - 0x4c]
setle dl
sub ecx, 0x731d497c
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, edx
setl al
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0x28], ebx
jmp 0x10059272
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], ebx
jl 0x1005926f
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], ebx
jl 0x1005926a
mov dword [ebp - 0x20], ebx
jmp 0x10059260
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x100], 4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1005924f
dec dword [ebp - 0x14]
jns 0x1005924a
dec dword [ebp - 0x18]
jns 0x10059242
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jle 0x1005923a
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x100591ba
lea ecx, [ebp - 0xf8]
call fcn.10028080
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret