Function at 0x100424b9
Capabilities:
Create directory
Extract resource via kernel32 functions
Get common file path
Get file system object information
Get session user name
Read .ini file

Disassembly:
mov eax, 0x100726c7
call fcn.10070e38
mov eax, 0x1604
call fcn.1006cd10
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x5c], ecx
push 2
mov dword [ebp - 0x30], 0xc184c506
mov byte [ebp - 0x61], dl
mov dword [ebp - 0x1c], ebx
pop ecx
jmp 0x100424f8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x494], 0xb57f
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x100424e7
xor esi, esi
mov dword [ebp - 0x30], ebx
inc esi
jmp 0x1004251c
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x494]
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x494], ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jle 0x10042505
mov edi, 0x971c
lea ecx, [ebp - 0x660]
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x28], 0x6fe7d8a8
push esi
call fcn.10009afa
push 4
mov dword [ebp - 0x38], 0x596def04
mov dword [ebp - 0x20], ebx
pop ecx
jmp 0x1004255c
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xec], 0x540d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x1004254b
mov dword [ebp - 0x20], ebx
jmp 0x10042579
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x660]
mov dword [eax + ecx*4], 0xa58de38
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10042566
push 3
mov dword [ebp - 0x28], ebx
pop edx
jmp 0x100427ef
mov dword [ebp - 0x20], 0x5b3b9da4
mov dword [ebp - 0x2c], 0x33c8a0c0
mov dword [ebp - 0x3c], 0x61e9426
mov dword [ebp - 0x58], 0xbeba
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], ebx
jl 0x100427ec
mov dword [ebp - 0x30], 0xffffffff
push 2
mov dword [ebp - 0x1c], 0xe4c12f69
mov dword [ebp - 0x10], ebx
pop ecx
jmp 0x100425d8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x3ac], 5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100425c7
mov dword [ebp - 0x10], ebx
jmp 0x100425f3
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x730], 0xdb4546b7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100425e2
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xec], ecx
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], ebx
jl 0x100427e3
mov dword [ebp - 0x38], esi
xor edx, edx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xec], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xe8]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0xec]
sub edx, eax
mov eax, dword [ebp - 0x20]
cmp edx, eax
mov eax, dword [ebp - 0x28]
setge cl
cmp ecx, dword [ebp + eax*4 - 0xec]
jle 0x10042680
cmp dword [ebp - 0x38], ebx
jne 0x10042680
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0xe0]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setge dl
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x28]
sub edx, eax
sub edx, 0xfffffff9
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x30]
test eax, eax
jne 0x100426e2
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0xec], ebx
mov eax, ebx
je 0x100426e4
mov eax, esi
cmp eax, dword [ebp - 0x28]
jg 0x100426ec
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x3ac], ebx
je 0x10042759
mov dword [ebp - 0x2c], 0x14
jmp 0x10042751
mov edx, dword [ebp - 0x3a8]
mov eax, dword [ebp - 0x28]
neg edx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, 0xb39
setle cl
xor eax, eax
add ecx, dword [ebp - 0xe8]
cmp edx, ecx
sete al
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jle 0x1004273e
mov ecx, esi
cmp dword [ebp - 0x28], ebx
jne 0x10042740
mov ecx, ebx
xor eax, eax
cmp ecx, 0x7d38
setle al
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x13
je 0x10042700
jmp 0x100427d7
mov dword [ebp - 0x1c], ebx
jmp 0x1004276b
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x12c], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1004275e
cmp dword [ebp - 0x28], ebx
je 0x1004277b
mov eax, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xec]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xec]
mov edx, dword [ebp - 0x72c]
sub edx, eax
mov eax, dword [ebp - 0x12c]
sub edx, eax
mov eax, dword [ebp - 0x12c]
inc edx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x660]
setge cl
sub ecx, 0x451c
neg ecx
sbb ecx, ecx
inc ecx
mov dword [eax], ecx
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x30]
jns 0x10042618
push 3
pop edx
dec dword [ebp - 0x20]
jns 0x100425b1
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jle 0x10042589
lea ecx, [ebp - 0x660]
call fcn.1000a086
mov dword [ebp - 0x50], 0xffffffff
lea ecx, [ebp - 0x468]
push esi
call fcn.10009afa
push 2
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x37c]
pop eax
mov dword [ebp - 0x30], 0xfffffffb
mov dword [ebp - 0x2c], ebx
push eax
call fcn.10009afa
mov dword [ebp - 0x48], 0xffffffff
push 2
mov dword [ebp - 0x38], 0xfffffff9
mov dword [ebp - 0x1c], ebx
pop edx
jmp 0x10042858
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x37c]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10042848
mov dword [ebp - 0x30], 0x16
jmp 0x100428cd
mov dword [ebp - 0x34], 0xffab8c3a
mov dword [ebp - 0x38], 9
mov dword [ebp - 0x50], 0xb78acc4b
mov dword [ebp - 0x2c], ebx
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x38], 3
mov eax, dword [ebp - 0x37c]
mov dword [eax], ecx
je 0x1004289f
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x50], eax
mov eax, esi
cmp dword [ebp - 0x50], ebx
jne 0x100428a1
mov eax, ebx
mov ecx, dword [ebp - 0x34]
xor edx, edx
add ecx, eax
imul eax, dword [ebp - 0x34], 0x314a
cmp ecx, eax
mov ecx, dword [ebp - 0x37c]
setl dl
sub edx, dword [ecx]
neg edx
sbb edx, edx
xor eax, eax
inc edx
test edx, edx
setle al
mov dword [ecx], eax
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xffffffff
jle 0x10042866
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x2c], ebx
je 0x100428e5
mov eax, dword [ebp - 0x2c]
shl eax, 3
test eax, eax
jne 0x100428e7
mov esi, ebx
mov dword [ebp - 0x30], 8
xor ecx, ecx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x37c]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x48]
cmp esi, eax
setge cl
xor eax, eax
cmp ecx, 0x4465
lea ecx, [ebp - 0x37c]
setg al
sub edx, eax
mov dword [ebp - 0x2c], edx
call fcn.1000a086
mov dword [ebp - 0x38], 0x857b1a09
xor edx, edx
mov dword [ebp - 0x10], 0xeb61943e
inc edx
mov dword [ebp - 0x38], edx
mov esi, 0x97fb
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], 0xc6aa
mov dword [ebp - 0x1c], ebx
jmp 0x1004295a
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x468]
mov dword [eax + ecx*4], 0x6548aab5
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10042947
cmp dword [ebp - 0x4c], ebx
jne 0x10042994
mov eax, dword [ebp - 0x4c]
dec eax
neg eax
sbb eax, eax
neg eax
add eax, dword [ebp - 0x4c]
jne 0x10042994
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], al
je 0x10042ad5
push ebx
push 0x23b
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x10042ad5
mov dword [ebp - 0x2c], 0xfffffff7
mov dword [ebp - 0x1c], 0x5d73
mov dword [ebp - 0x48], 0xfffffffd
mov dword [ebp - 0x30], ebx
jmp 0x100429bf
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x42c], 0xfffffff6
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x100429ae
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x468]
mov dword [eax], ecx
mov eax, dword [ebp - 0x4c]
sub ecx, eax
imul ecx, dword [ebp - 0x1c]
cmp ecx, edx
je 0x100429e4
mov eax, edx
cmp dword [ebp - 0x1c], ebx
jne 0x100429e6
mov eax, ebx
mov dword [ebp - 0x38], eax
xor edx, edx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x2c], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
add eax, ecx
mov dword [ebp - 0x42c], eax
mov ecx, dword [ebp - 0x10]
imul ecx, eax
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setg cl
xor ebx, ebx
cmp ecx, eax
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
setle bl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x50]
setle dl
xor ecx, ecx
cmp edx, ebx
setge cl
sub eax, ecx
mov ecx, dword [ebp - 0x4c]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x2c], 0x594484f7
cmp dword [ebp - 0x2c], 0x5c2f4fe1
jl 0x10042ac1
mov eax, dword [ebp - 0x42c]
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
xor ebx, ebx
inc eax
sub eax, 9
jne 0x10042a7c
cmp dword [ebp - 0x4c], ebx
jne 0x10042a7c
mov ecx, ebx
jmp 0x10042a7f
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x2c]
xor edx, edx
sub ecx, eax
mov eax, dword [ebp - 0x42c]
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x468]
setg dl
mov dword [eax], edx
inc edx
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
mov dword [ebp - 0x42c], edx
mov eax, dword [ebp - 0x3c]
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x48]
jle 0x10042ac3
xor edx, edx
inc edx
jmp 0x10042ac5
xor ebx, ebx
mov edx, ebx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, edx
setl cl
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x38], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x468]
call fcn.1000a086
mov dword [ebp - 0x4c], edi
lea ecx, [ebp - 0x450]
mov dword [ebp - 0x50], 0xffffffff
push 1
call fcn.10009afa
mov dword [ebp - 0x38], 0x857b1a09
mov dword [ebp - 0x10], 0xeb61943e
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x3c], esi
xor esi, esi
mov dword [ebp - 0x38], 0xc6aa
inc esi
mov dword [ebp - 0x1c], ebx
jmp 0x10042b35
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x450]
mov dword [eax + ecx*4], 0x6548aab5
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10042b22
cmp dword [ebp - 0x4c], ebx
jne 0x10042b6f
mov eax, dword [ebp - 0x4c]
dec eax
neg eax
sbb eax, eax
neg eax
add eax, dword [ebp - 0x4c]
jne 0x10042b6f
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], al
je 0x10042cac
push ebx
push 0x23b
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x10042cac
mov dword [ebp - 0x2c], 0xfffffff7
mov dword [ebp - 0x1c], 0x5d73
mov dword [ebp - 0x48], 0xfffffffd
mov dword [ebp - 0x30], ebx
jmp 0x10042b9a
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x420], 0xfffffff6
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x10042b89
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x450]
mov dword [eax], ecx
mov eax, dword [ebp - 0x4c]
sub ecx, eax
imul ecx, dword [ebp - 0x1c]
cmp ecx, esi
je 0x10042bbf
mov eax, esi
cmp dword [ebp - 0x1c], ebx
jne 0x10042bc1
mov eax, ebx
mov dword [ebp - 0x38], eax
xor edx, edx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x2c], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
add eax, ecx
mov dword [ebp - 0x420], eax
mov ecx, dword [ebp - 0x10]
imul ecx, eax
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setg cl
xor ebx, ebx
cmp ecx, eax
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
setle bl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x50]
setle dl
xor ecx, ecx
cmp edx, ebx
setge cl
sub eax, ecx
mov ecx, dword [ebp - 0x4c]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x2c], 0x594484f7
cmp dword [ebp - 0x2c], 0x5c2f4fe1
jl 0x10042c98
mov eax, dword [ebp - 0x420]
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
xor ebx, ebx
inc eax
sub eax, 9
jne 0x10042c55
mov ecx, ebx
cmp dword [ebp - 0x4c], ebx
je 0x10042c57
mov ecx, esi
mov eax, dword [ebp - 0x2c]
xor edx, edx
sub ecx, eax
mov eax, dword [ebp - 0x420]
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x450]
setg dl
mov dword [eax], edx
inc edx
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x3c]
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x48]
jle 0x10042c9a
mov edx, esi
jmp 0x10042c9c
xor ebx, ebx
mov edx, ebx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, edx
setl cl
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x450]
call fcn.1000a086
movdqa xmm0, xmmword [0x10008010]
lea ecx, [ebp - 0x820]
push ecx
lea eax, [ebp - 0x810]
mov dword [ebp - 0x20], 0x77e8edf1
push eax
push ecx
lea ecx, [ebp - 0x438]
movdqu xmmword [ebp - 0x820], xmm0
call fcn.10009b36
push 0xa
pop edx
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x20], ebx
je 0x10042d41
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10042d2e
push 0x12c8
push ebx
push 0x177b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDlgItemTextW]
jmp 0x10042d2e
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10042d88
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x10042d88
mov dword [ebp - 0x38], 0x9989d221
mov dword [ebp - 0x20], 0x14
jmp 0x10042d77
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], ebx
jmp 0x10042d6e
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x438]
cmp dword [eax + ecx*4], ebx
jne 0x10042d74
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x10042d5d
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
je 0x10042d51
mov eax, dword [ebp - 0x438]
mov eax, dword [eax + 8]
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x438]
call fcn.1000a086
mov dword [ebp - 0x30], edi
or edi, 0xffffffff
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x20], 0x4768
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x1c], ebx
jmp 0x10042db8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xc4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10042dab
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10042dde
push 0x19a9
push 0xe18
push ebx
push ebx
push 0x1564
call dword [sym.imp.USER32.dll_MsgWaitForMultipleObjects]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc4]
cmp eax, dword [ebp - 0xbc]
jl 0x10042df8
mov eax, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0x20]
sub ecx, eax
cmp ecx, dword [ebp - 0x20]
je 0x10043020
push 3
lea ecx, [ebp - 0x678]
call fcn.10009afa
mov dword [ebp - 4], esi
mov dword [ebp - 0x1c], ebx
jmp 0x10042e67
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x678]
mov dword [eax + ecx*4], 0xb0d5
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10042e54
mov dword [ebp - 0x20], 8
cmp dword [ebp - 0x20], 0x17
jne 0x1004300d
push 2
pop edi
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x4c], edi
cmp dword [ebp - 0x4c], ebx
jl 0x10042ea4
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10042e9f
push ebx
call dword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
dec dword [ebp - 0x4c]
jns 0x10042e8f
mov dword [ebp - 0x4c], ebx
cmp dword [ebp - 0x4c], edi
jg 0x10042ffd
mov ebx, dword [ebp - 0x678]
mov dword [ebp - 0x50], ebx
xor eax, eax
mov byte [ebp - 0x21], al
mov dword [ebp - 0x38], 0x1793
cmp dword [ebp - 0x38], 0x101a
jge 0x10042fd8
mov dword [ebp - 0xb8], eax
mov ecx, 0x10663c70
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x18c]
push eax
call fcn.1001bc37
mov esi, dword [ebp - 0x18c]
lea eax, [ebp - 0xb8]
push eax
push ecx
lea eax, [ebp - 0x8c]
push eax
push ecx
lea eax, [ebp - 0x9c]
mov ecx, 0x10663c70
push eax
call fcn.1001bc37
pop ecx
mov ecx, eax
call fcn.1001bc37
pop ecx
mov ecx, eax
call fcn.1001bc37
mov edi, dword [ebp - 0x9c]
mov ebx, dword [ebp - 0x8c]
dec esi
je 0x10042f9b
lea eax, [ebp - 0x34c]
push eax
push ecx
lea eax, [ebp - 0x33c]
push eax
push ecx
lea eax, [ebp - 0x32c]
mov ecx, 0x10663c70
push eax
call fcn.1001bc37
pop ecx
mov ecx, eax
call fcn.1001bc37
pop ecx
mov ecx, eax
call fcn.1001bc37
mov eax, dword [ebp - 0xb8]
add eax, dword [ebp - 0x34c]
add edi, dword [ebp - 0x32c]
add ebx, dword [ebp - 0x33c]
mov dword [ebp - 0xb8], eax
dec esi
jne 0x10042f3b
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x8c], ebx
jmp 0x10042fa1
mov eax, dword [ebp - 0xb8]
dec esi
mov dword [ebp - 0x18c], esi
test edi, edi
jne 0x10042fb9
test ebx, ebx
jne 0x10042fb9
mov edx, 0x10007824
test eax, eax
je 0x10042fbe
mov edx, 0x10007828
mov ecx, 0x10663bb8
call fcn.1000d12a
push eax
call fcn.1000d301
mov ebx, dword [ebp - 0x50]
xor esi, esi
pop ecx
push 2
pop edi
inc esi
cmp byte [ebp - 0x21], 0
je 0x10042fec
push esi
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_ShowOwnedPopups]
inc dword [ebx + 4]
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], edi
jle 0x10042eb9
xor ebx, ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x17
je 0x10042e81
or edi, 0xffffffff
lea ecx, [ebp - 0x678]
mov dword [ebp - 4], edi
call fcn.1000a086
jmp 0x100430cb
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x2c], 0x7f668cde
mov dword [ebp - 0x1c], ebx
jmp 0x10043044
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x8dc], 7
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10043033
mov dword [ebp - 0x20], ebx
jmp 0x100430c5
mov dword [ebp - 0x1c], 0x3e8af804
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10043071
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]
mov eax, dword [ebp - 0xc4]
xor edx, edx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3c]
imul ecx, dword [ebp - 0x2c], 0x91c6
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
setle dl
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x8d4], eax
test eax, eax
jne 0x100430bd
mov eax, ebx
cmp dword [ebp - 0xc0], ebx
je 0x100430bf
mov eax, esi
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x39
jge 0x1004304f
push esi
lea ecx, [ebp - 0x3e4]
call fcn.10009afa
push 2
pop ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 0x2c], 0xc184c506
mov dword [ebp - 0x1c], ebx
jmp 0x100430fa
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x484], 0xb57f
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x100430e9
mov dword [ebp - 0x2c], ebx
jmp 0x1004311b
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp + eax*4 - 0x484]
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x484], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x10043104
mov dword [ebp - 0x38], 0x857b1a09
lea ecx, [ebp - 0x690]
mov dword [ebp - 0x28], 0x6fe7d8a8
push esi
call fcn.10009afa
push 4
mov dword [ebp - 0x38], 0x596def04
mov dword [ebp - 0x10], ebx
pop ecx
jmp 0x1004315a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x10c], 0x540d
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10043149
mov dword [ebp - 0x10], ebx
jmp 0x10043177
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x690]
mov dword [eax + ecx*4], 0xa58de38
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10043164
push 3
mov dword [ebp - 0x28], ebx
pop edx
jmp 0x100433e9
mov dword [ebp - 0x20], 0x5b3b9da4
mov dword [ebp - 0x2c], 0x33c8a0c0
mov dword [ebp - 0x3c], 0x61e9426
mov dword [ebp - 0x58], 0xbeba
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], ebx
jl 0x100433e6
mov dword [ebp - 0x4c], edi
push 2
mov dword [ebp - 0x1c], 0xe4c12f69
mov dword [ebp - 0x10], ebx
pop ecx
jmp 0x100431d2
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x3b8], 5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100431c1
mov dword [ebp - 0x10], ebx
jmp 0x100431ed
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x7f0], 0xdb4546b7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100431dc
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x10c], ecx
mov dword [ebp - 0x4c], edx
cmp dword [ebp - 0x4c], ebx
jl 0x100433dd
mov dword [ebp - 0x38], esi
xor edx, edx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x10c], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x108]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x10c]
sub edx, eax
mov eax, dword [ebp - 0x20]
cmp edx, eax
mov eax, dword [ebp - 0x28]
setge cl
cmp ecx, dword [ebp + eax*4 - 0x10c]
jle 0x1004327a
cmp dword [ebp - 0x38], ebx
jne 0x1004327a
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setge dl
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x28]
sub edx, eax
sub edx, 0xfffffff9
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x4c]
test eax, eax
jne 0x100432dc
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x10c], ebx
mov eax, ebx
je 0x100432de
mov eax, esi
cmp eax, dword [ebp - 0x28]
jg 0x100432e6
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x3b8], ebx
je 0x10043353
mov dword [ebp - 0x2c], 0x14
jmp 0x1004334b
mov edx, dword [ebp - 0x3b4]
mov eax, dword [ebp - 0x28]
neg edx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, 0xb39
setle cl
xor eax, eax
add ecx, dword [ebp - 0x108]
cmp edx, ecx
sete al
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jle 0x10043338
mov ecx, esi
cmp dword [ebp - 0x28], ebx
jne 0x1004333a
mov ecx, ebx
xor eax, eax
cmp ecx, 0x7d38
setle al
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x13
je 0x100432fa
jmp 0x100433d1
mov dword [ebp - 0x1c], ebx
jmp 0x10043365
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x114], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10043358
cmp dword [ebp - 0x28], ebx
je 0x10043375
mov eax, dword [ebp - 0x114]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x10c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x10c]
mov edx, dword [ebp - 0x7ec]
sub edx, eax
mov eax, dword [ebp - 0x114]
sub edx, eax
mov eax, dword [ebp - 0x114]
inc edx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x690]
setge cl
sub ecx, 0x451c
neg ecx
sbb ecx, ecx
inc ecx
mov dword [eax], ecx
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x4c]
jns 0x10043212
push 3
pop edx
dec dword [ebp - 0x20]
jns 0x100431af
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jle 0x10043187
lea ecx, [ebp - 0x690]
call fcn.1000a086
push 2
mov dword [ebp - 0x14], 0xeb61943e
lea ecx, [ebp - 0x338]
pop eax
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x4c], 0xfffffffb
mov dword [ebp - 0x2c], ebx
push eax
call fcn.10009afa
mov dword [ebp - 0x48], edi
push 2
mov dword [ebp - 0x38], 0xfffffff9
mov dword [ebp - 0x1c], ebx
pop edx
jmp 0x10043441
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x338]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10043432
mov dword [ebp - 0x4c], 0x16
jmp 0x100434b6
mov dword [ebp - 0x34], 0xffab8c3a
mov dword [ebp - 0x38], 9
mov dword [ebp - 0x50], 0xb78acc4b
mov dword [ebp - 0x2c], ebx
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x38], 3
mov eax, dword [ebp - 0x338]
mov dword [eax], ecx
je 0x10043488
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x50], eax
mov eax, esi
cmp dword [ebp - 0x50], ebx
jne 0x1004348a
mov eax, ebx
mov ecx, dword [ebp - 0x34]
xor edx, edx
add ecx, eax
imul eax, dword [ebp - 0x34], 0x314a
cmp ecx, eax
mov ecx, dword [ebp - 0x338]
setl dl
sub edx, dword [ecx]
neg edx
sbb edx, edx
xor eax, eax
inc edx
test edx, edx
setle al
mov dword [ecx], eax
dec dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], edi
jle 0x1004344f
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x2c], ebx
je 0x100434cd
mov eax, dword [ebp - 0x2c]
shl eax, 3
test eax, eax
jne 0x100434cf
mov esi, ebx
mov dword [ebp - 0x4c], 8
xor ecx, ecx
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x338]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x48]
cmp esi, eax
setge cl
xor eax, eax
cmp ecx, 0x4465
lea ecx, [ebp - 0x338]
setg al
sub edx, eax
mov dword [ebp - 0x2c], edx
call fcn.1000a086
mov dword [ebp - 0x40], 0x97fb
xor esi, esi
mov dword [ebp - 0x4c], 0xe8cff0ea
inc esi
push 3
pop eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x220], esi
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x218], esi
mov dword [ebp - 0x214], esi
mov dword [ebp - 0x34], 0xdb80ebbd
mov dword [ebp - 0x50], 0xcff29c21
mov dword [ebp - 0x54], 0x7c8a36a7
push 2
mov dword [ebp - 0x4c], eax
pop ecx
cmp dword [ebp - 0x4c], ecx
jg 0x100435aa
jmp 0x1004355b
push 3
pop eax
push eax
lea ecx, [ebp - 0x6a8]
call fcn.10009afa
mov dword [ebp - 0x1c], ebx
jmp 0x1004357f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x6a8]
mov dword [eax + ecx*4], 0xb108f825
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1004356c
mov eax, dword [ebp - 0x6a8]
lea ecx, [ebp - 0x6a8]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x3c], eax
call fcn.1000a086
dec dword [ebp - 0x4c]
push 2
pop ecx
cmp dword [ebp - 0x4c], ecx
jle 0x10043558
dec dword [ebp - 0x34]
mov eax, dword [ebp - 0x220]
mov eax, dword [ebp - 0x220]
cmp dword [ebp - 0x3c], ebx
jne 0x100435c6
cmp dword [ebp - 0x34], ebx
jne 0x100435c6
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x214]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x218]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x218]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
neg eax
push ecx
sbb eax, eax
lea ecx, [ebp - 0x6c0]
inc eax
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x38], 0xc6aa
mov dword [ebp - 0x3c], 0x64dc9ed9
call fcn.10009afa
mov dword [ebp - 0x50], 0xa5b7d8cf
push 2
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x1c], ebx
pop edx
jmp 0x1004363f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x6c0]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10043630
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov eax, dword [ebp - 0x3c]
mov ecx, esi
mov edi, dword [sym.imp.USER32.dll_GetDC]
sub ecx, eax
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
mov eax, dword [ebp - 0x6c0]
setge dl
mov dword [eax + 4], edx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x50]
add eax, 0x5fe46c2e
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x1004369c
push ebx
push ebx
push ebx
push 0x1622
push 0x59a
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentExPointA]
lea ecx, [ebp - 0x6c0]
call fcn.1000a086
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x10], ebx
jmp 0x100436c0
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x134], 0xfffffff9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x100436af
push 2
mov dword [ebp - 0x10], ebx
pop edx
jmp 0x100436de
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x98], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x100436cd
mov dword [ebp - 0x94], ebx
cmp dword [ebp - 0x94], ebx
jg 0x100437a3
mov dword [ebp - 0x50], 0x6d8bc0d1
xor ecx, ecx
mov dword [ebp - 0x38], 0xfffffffa
mov eax, dword [ebp - 0x94]
cmp eax, 0xfffffff8
mov eax, dword [ebp - 0x94]
setne cl
sub ecx, dword [ebp + eax*4 - 0x134]
neg ecx
sbb ecx, ecx
xor ebx, ebx
lea eax, [ecx + 0xa]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp + eax*4 - 0x134]
test eax, eax
mov dword [ebp - 0x50], 0x86bd085
mov eax, dword [ebp - 0x94]
setne bl
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x134]
mov eax, dword [ebp - 0x50]
cmp eax, ebx
setl cl
xor ebx, ebx
imul edx, ecx
mov dword [ebp - 0x38], edx
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x1004378e
push 0x1e89
push ebx
push 0x2259
push 0x2551
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_GetCharacterPlacementW]
inc dword [ebp - 0x94]
cmp dword [ebp - 0x94], ebx
jle 0x100436f5
push 2
pop edx
mov dword [ebp - 0x1c], ebx
jmp 0x100437bb
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x3e4]
mov dword [eax + ecx*4], 0x6548aab5
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x100437a8
cmp dword [ebp - 0x30], ebx
jne 0x10043b48
mov eax, dword [ebp - 0x30]
dec eax
neg eax
sbb eax, eax
neg eax
add eax, dword [ebp - 0x30]
jne 0x10043b48
mov dword [ebp - 0x10], 0xf46d
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x14], 0x9523dd97
mov dword [ebp - 0x1c], ebx
jmp 0x1004380a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x744], 0x1b32e265
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x100437f9
cmp dword [ebp - 0x10], ebx
jne 0x1004385a
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfff9
jne 0x10043823
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x3c], eax
je 0x10043848
cmp dword [ebp - 0x10], ebx
je 0x10043848
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x740], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
add ecx, eax
je 0x100438cf
mov dword [ebp - 0x54], 0x55a61940
mov dword [ebp - 0x3c], 0x7ea82bc9
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x34]
dec ecx
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x1359
setle al
xor ecx, ecx
cmp eax, 0x32f
mov eax, dword [ebp - 0x3c]
setle cl
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x78f1
setle cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x54]
setg dl
imul eax, dword [ebp - 0x54]
add edx, eax
imul edx, dword [ebp - 0x54]
mov dword [ebp - 0x3c], edx
jmp 0x10043902
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x100438ef
push 0x5ad
push 0x388
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_CheckDlgButton]
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10043902
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
mov dword [ebp - 0x2c], 0xfffffffb
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x38], 0xf3c34eea
mov dword [ebp - 0x2c], ebx
jmp 0x10043924
cmp dword [ebp - 0x1c], ebx
jne 0x1004392a
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x12
jl 0x1004391c
mov dword [ebp - 0x1c], 0xffffffef
jmp 0x10043943
mov dword [ebp - 0x48], 0x365653d4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x48], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x26
jl 0x10043933
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x1004439b
mov dword [ebp - 0x38], 0x1b74
cmp dword [ebp - 0x38], 0x80c
jge 0x100439b9
lea eax, [ebp - 0x1dc]
push eax
push 0x100078ec
call fcn.10057e4b
pop ecx
pop ecx
mov ecx, dword [ebp - 0x1dc]
mov eax, ecx
mov esi, ebx
test ecx, ecx
jle 0x10043991
cdq
idiv dword [ebp - 0x44]
add esi, edx
test eax, eax
jg 0x10043987
and esi, 0x80000003
jns 0x1004399e
dec esi
or esi, 0xfffffffc
inc esi
je 0x100439a3
inc ecx
jmp 0x1004397f
push ecx
push 0x100078f8
mov dword [ebp - 0x1dc], ecx
call fcn.10058066
pop ecx
xor esi, esi
pop ecx
inc esi
push 2
mov dword [ebp - 0x28], esi
lea ecx, [ebp - 0x648]
pop eax
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x38], 0x17c9
push eax
call fcn.10009afa
push esi
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 6
call fcn.10009afa
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x4ec]
mov dword [ebp - 0x50], 0xffffffff
push 3
call fcn.10009afa
push 2
mov dword [ebp - 0x48], 0xfffffff9
mov dword [ebp - 0x20], ebx
pop edx
jmp 0x10043a26
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x648]
mov dword [eax + ecx*4], 5
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x10043a13
mov dword [ebp - 0x20], ebx
jmp 0x10043a43
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x630]
mov dword [eax + ecx*4], 0x20ee
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10043a30
mov dword [ebp - 0x20], ebx
jmp 0x10043a5c
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4ec]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10043a4d
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x28]
cmp eax, 8
setg cl
add ecx, 0xd1b7
je 0x10043a7f
mov dword [ebp - 0x1c], 0xa1c1
mov dword [ebp - 0x50], 0x7cbae8b0
mov dword [ebp - 0x50], esi
push 4
mov dword [ebp - 0x38], 0x6a191a83
mov dword [ebp - 0x10], ebx
pop ecx
jmp 0x10043b79
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x4a4], 0x8cae2fe8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10043b68
mov dword [ebp - 0x10], ebx
jmp 0x10043b94
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x7fc], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10043b83
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x1c]
je 0x10043bac
mov ecx, esi
cmp dword [ebp - 0x4a0], ebx
jne 0x10043bae
mov ecx, ebx
mov eax, dword [ebp - 0x1c]
sub eax, ecx
neg eax
sbb eax, eax
inc eax
cmp eax, 0x986d
jne 0x10043bc9
mov eax, ebx
cmp dword [ebp - 0x4a0], ebx
je 0x10043bcb
mov eax, esi
mov dword [ebp - 0x50], eax
xor edx, edx
mov ecx, dword [ebp - 0x4a0]
mov eax, dword [ebp - 0x50]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setne bl
xor ecx, ecx
neg ebx
cmp ebx, eax
setle cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x4a0]
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x7fc]
sub ecx, eax
mov eax, dword [ebp - 0x7f4]
imul edx, ecx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [ebp - 0x4a0]
setle cl
cmp ecx, 0xf3004570
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setg cl
xor ebx, ebx
mov dword [ebp - 0x38], ecx
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x10043c51
push 0x22e9
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetClassNameW]
push 4
pop edx
mov dword [ebp - 0x28], 0xfffffff7
lea ecx, [ebp - 0x5dc]
mov dword [ebp - 0x1c], 0x5d73
push edx
call fcn.10009afa
mov byte [ebp - 4], 3
push 4
mov dword [ebp - 0x50], 0xccd2466e
mov dword [ebp - 0x2c], ebx
pop edx
jmp 0x10043c94
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x5dc]
mov dword [eax + ecx*4], 0x4e064826
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], edx
jl 0x10043c81
mov ebx, dword [ebp - 0x5dc]
mov dword [ebp - 0x38], ebx
and dword [ebx + 8], 0
push 3
lea ecx, [ebp - 0x2ac]
call fcn.10009afa
push 4
pop edx
mov byte [ebp - 4], dl
xor edx, edx
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x2c], edx
jmp 0x10043cd2
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2ac]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 3
jl 0x10043cc3
push 2
pop ecx
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x44], edx
jl 0x10043e50
xor ebx, ebx
mov dword [ebp - 0x4c], 0xdc9ed9ba
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], edx
jl 0x10043e3b
mov dword [ebp - 0x20], 0xd9ee1c97
mov dword [ebp - 0x2c], edx
jmp 0x10043d19
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x8b8], 0x2afd77cc
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 3
jl 0x10043d08
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], ecx
jg 0x10043e32
push ecx
mov dword [ebp - 0x10], 0xffffffff
lea ecx, [ebp - 0x510]
call fcn.10009afa
xor edx, edx
push 2
mov dword [ebp - 0x2c], edx
pop esi
jmp 0x10043d57
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x510]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jl 0x10043d48
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x10], edx
jl 0x10043d7d
dec dword [ebp - 0x4c]
jns 0x10043cfc
dec dword [ebp - 0x44]
jns 0x10043ce9
mov ebx, dword [ebp - 0x38]
xor esi, esi
mov edi, dword [sym.imp.USER32.dll_GetDC]
inc esi
mov byte [ebp - 0x21], dl
cmp byte [ebp - 0x21], 0
je 0x10043e69
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_SaveDC]
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 3
call fcn.1000a086
inc dword [ebx + 8]
push 4
pop eax
cmp dword [ebx + 8], eax
jle 0x10043ca6
xor ebx, ebx
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x10043ea8
push 0x10ae
push 0x23bf
push ebx
push 0x1d4b
push ebx
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
push 2
pop eax
lea ecx, [ebp - 0x5dc]
mov byte [ebp - 4], al
call fcn.1000a086
mov dword [ebp - 0x2c], 0xdb3ae355
lea ecx, [ebp - 0x774]
push esi
call fcn.10009afa
mov dword [ebp - 0x44], ebx
jmp 0x10043ee1
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x774]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], esi
jl 0x10043ed1
mov dword [ebp - 0x2c], 0xffffffea
jmp 0x10043f2b
mov dword [ebp - 0x44], 0x98311173
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x10043f0c
cmp dword [ebp - 0x2c], 0xd
jg 0x10043eef
lea ecx, [ebp - 0x774]
call fcn.1000a086
push 2
mov dword [ebp - 0x48], 0xfffffffd
pop eax
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x10043f6e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3e4]
call fcn.1000a086
mov dword [ebp - 0x30], esi
lea ecx, [ebp - 0x504]
push 2
mov dword [ebp - 0x44], ebx
mov esi, 0x336de018
pop eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], 0x5bfb66fe
mov dword [ebp - 0x3c], 1
push eax
call fcn.10009afa
push 2
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x100443f0
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x504]
mov dword [eax + ecx*4], 0xfffffff8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100443dd
cmp dword [ebp - 0x30], ebx
je 0x10044431
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x30], eax
jle 0x10044414
cmp dword [ebp - 0x30], ebx
jne 0x10044414
xor ecx, ecx
mov eax, ebx
inc ecx
jmp 0x10044419
xor ecx, ecx
inc ecx
mov eax, ecx
cmp eax, 6
sbb eax, eax
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
dec eax
mov eax, ecx
jne 0x10044433
mov eax, ebx
mov ecx, dword [ebp - 0x30]
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x30]
cmp edx, eax
sbb eax, eax
inc eax
sub eax, ecx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x14], eax
je 0x100444ad
mov eax, dword [ebp - 0x504]
inc dword [eax]
jne 0x1004448d
cmp dword [ebp - 0x44], 0xfffffffc
je 0x10044467
cmp dword [ebp - 0x14], ebx
jne 0x10044467
mov eax, ebx
jmp 0x1004446a
xor eax, eax
inc eax
cmp eax, dword [ebp - 0x1c]
jle 0x10044472
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov edx, dword [ebp - 0x1c]
sub edx, eax
mov eax, dword [ebp - 0x44]
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x30]
jle 0x1004448d
mov edx, ebx
jmp 0x10044490
xor edx, edx
inc edx
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
je 0x100444ad
xor ecx, ecx
inc ecx
jmp 0x100444af
mov ecx, ebx
xor eax, eax
test ecx, ecx
lea ecx, [ebp - 0x504]
setg al
add eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
call fcn.1000a086
xor eax, eax
lea ecx, [ebp - 0x654]
inc eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x1c], esi
push 2
mov dword [ebp - 0x14], 0x5bfb66fe
mov dword [ebp - 0x3c], eax
pop eax
push eax
call fcn.10009afa
push 2
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x10044507
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x654]
mov dword [eax + ecx*4], 0xfffffff8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100444f4
cmp dword [ebp - 0x30], ebx
je 0x10044548
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x30], eax
jle 0x1004452b
mov edx, ebx
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
sbb ecx, ecx
add eax, edx
inc ecx
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x14], ecx
je 0x100445c4