Function at 0x100390a2
Capabilities:
Accept command line arguments
Check http status code
Check os version
Contain obfuscated stackstrings
Create pipe
Create process on windows
Create thread
Delete registry value
Extract resource via kernel32 functions
Get common file path
Get disk information
Get file size
Get geographical location
Query environment variable
Query or enumerate registry key
Query service status
Read .ini file
Resume thread
Set registry value

Disassembly:
mov eax, 0x1008cad3
call fcn.1008c460
mov eax, 0x1114
call fcn.10088a50
push ebx
xor eax, eax
mov byte [ebp - 0x6d], dl
mov dword [ebp - 0x1c], eax
push esi
mov dword [ebp - 0x48], 0xd76270e7
push edi
mov dword [ebp - 0x38], 0xbdf11caf
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 4
push 0xffffffffffffffff
mov dword [ebp - 0x5c], ecx
pop edi
jge 0x100390f3
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xa50], edi
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 4
jl 0x100390de
xor eax, eax
push 2
pop ebx
mov dword [ebp - 0x40], eax
push 6
pop ecx
cmp dword [ebp - 0x40], ebx
jge 0x10039115
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xac4], ecx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x10039101
xor eax, eax
push 1
mov dword [ebp - 0x1c], eax
pop esi
jmp 0x100391a8
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x24], 0xfffffffd
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xa44]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0xa50]
mov eax, dword [ebp - 0x40]
cmp ecx, eax
setl dl
cmp edx, dword [ebp - 0xa48]
jle 0x10039158
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
push 4
pop ecx
sub ecx, eax
mov eax, 0x8dacb314
sub ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
push 0
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xa44]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x38]
cmp eax, esi
pop eax
setg cl
mov dword [ebp - 0xac0], ecx
inc dword [ebp - 0x1c]
xor edx, edx
cmp dword [ebp - 0x1c], 0xe
jge 0x10039120
mov dword [ebp - 0x1c], 0x696a485b
mov dword [ebp - 0x2c], 0x8a11015
mov dword [ebp - 0x20], 0xfff6
push 9
pop eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp eax, edx
setne cl
xor eax, eax
cmp ecx, 0x1d91e66c
setg al
sub eax, dword [ebp - 0x1c]
add eax, 0xbfb3a4d
jne 0x10039260
cmp dword [ebp - 0x1c], eax
jne 0x10039260
mov dword [ebp - 0x20], 0xa388
mov dword [ebp - 0x38], 0xef314d41
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
sub eax, 0xf90b8a44
neg eax
sbb eax, eax
inc eax
cmp eax, edi
je 0x10039236
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10039238
mov eax, esi
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0x9ba1
setle cl
xor eax, eax
cmp ecx, 0x73ede5c4
setne al
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x48], eax
jmp 0x100392c5
mov dword [ebp - 0x38], 0x2de4bf74
xor ebx, ebx
mov dword [ebp - 0x48], 0xb622b607
mov dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge bl
xor ecx, ecx
cmp eax, esi
push 9
setl cl
xor eax, eax
pop edx
cmp ecx, edx
setle al
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x38]
setg dl
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
inc dword [ebp - 0x20]
cmp eax, ecx
je 0x100392bd
mov eax, esi
jmp 0x100392bf
xor eax, eax
push 2
mov dword [ebp - 0x2c], eax
pop ebx
mov dword [ebp - 0x48], 0xfffd
xor eax, eax
mov dword [ebp - 0x24], 0x8a87013d
mov dword [ebp - 0x24], 0xfffffffc
mov dword [ebp - 0x30], 0x3ff82ff4
push 3
mov dword [ebp - 0x30], esi
pop edi
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x18], eax
jmp 0x10039302
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x103c], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x100392f1
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
or eax, 0xffffffff
inc dword [ebp - 0x38]
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], 0xfffffff7
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x24], 0x7b04800f
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x50], 0xe1dfe009
mov dword [ebp - 0x30], 0xd83d7839
mov dword [ebp - 0x30], 0x312fbb6b
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x30], 0xcc01
mov dword [ebp - 0x38], 0xa5fc0266
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x18], eax
jmp 0x10039374
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4a8], 0xd4e70302
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10039363
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x4a4], eax
je 0x10039390
mov ecx, esi
mov eax, dword [ebp - 0x50]
add eax, ecx
imul eax, dword [ebp - 0x50]
test eax, eax
jne 0x100393a4
mov ecx, eax
cmp dword [ebp - 0x2c], eax
je 0x100393a6
mov ecx, esi
mov eax, dword [ebp - 0x20]
sub ecx, eax
xor eax, eax
cmp ecx, dword [ebp - 0x20]
jne 0x100393b7
cmp dword [ebp - 0x2c], eax
je 0x100393be
cmp dword [ebp - 0x14], eax
je 0x100393be
mov eax, esi
cmp eax, dword [ebp - 0x24]
jg 0x100393c9
mov eax, dword [ebp - 0x4a4]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
cmp eax, 0x2f7f1c74
mov eax, dword [ebp - 0x4a8]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
neg ecx
jne 0x100393f7
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x100393f7
mov eax, dword [ebp - 0x4c]
dec dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x50], 0xffffffeb
jmp 0x10039465
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x6b8], eax
mov dword [ebp - 0x6b4], eax
mov dword [ebp - 0x6b0], eax
mov dword [ebp - 0x6ac], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x10039452
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x6b8]
mov eax, dword [ebp - 0x6b8]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x6b8]
inc eax
mov dword [ebp - 0x6b4], eax
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], 0x17
jle 0x10039415
or eax, 0xffffffff
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x40], 0x8afc1da7
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], eax
jmp 0x1003948f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa0], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10039482
mov eax, dword [ebp - 0x2c]
push 5
pop ecx
cmp ecx, eax
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x2c]
cmp eax, ecx
setl dl
xor eax, eax
or ecx, 0xffffffff
cmp edx, ecx
setg al
add eax, 8
je 0x100394c8
mov eax, dword [ebp - 0xa0]
xor eax, eax
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], eax
jg 0x10039572
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp + eax*4 - 0xa0]
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xa0], ecx
test ecx, ecx
je 0x10039550
xor eax, eax
cmp dword [ebp - 0xa0], eax
jne 0x10039505
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp + eax*4 - 0xa0]
inc dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp + eax*4 - 0xa0]
add ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0xa0]
cmp eax, edx
sete cl
xor eax, eax
cmp ecx, 0x9248
setne al
sub eax, 0x1aa5bbe7
je 0x10039550
mov edx, esi
jmp 0x10039554
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x2c], ecx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], eax
jle 0x100394d9
or ecx, 0xffffffff
mov dword [ebp - 0x44], 0x2667a876
push 9
pop edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x58], 0x88dcfd8f
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x100395a9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x144], 0xf6af1124
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10039591
xor eax, eax
push 6
mov dword [ebp - 0x144], eax
pop edx
jmp 0x100395cc
mov dword [ebp - 0x24], 0x19c5
cmp dword [ebp - 0x24], eax
jne 0x100395d4
mov eax, dword [ebp - 0x24]
inc dword [ebp - 0x144]
push 0
pop eax
cmp dword [ebp - 0x144], edx
jge 0x100395b4
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x100395f0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1e4], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100395dc
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], eax
jg 0x10039f68
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], 0x820eaada
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], 0x26b13122
mov dword [ebp - 0x30], 0x6f63
mov dword [ebp - 0x4c], 0xfffffff9
mov dword [ebp - 0x50], 0x4eff
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 4
jge 0x10039647
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x2f0], 0xfffffff6
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 4
jl 0x1003962e
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jge 0x10039667
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xad8], 0xa1ea5693
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x1003964f
xor eax, eax
mov dword [ebp - 0x2e8], eax
jmp 0x100398f5
mov dword [ebp - 0x38], 0x9f88
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], edi
jge 0x1003969c
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x3c4], 0x647dc4b
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jl 0x10039684
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], ebx
jge 0x100396bc
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x104], 0x3e90a624
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ebx
jl 0x100396a4
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], esi
jge 0x100396dc
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x64c], 0xde905f4d
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jl 0x100396c4
xor eax, eax
mov dword [ebp - 0x100], eax
cmp dword [ebp - 0x100], ebx
jg 0x100398ef
mov dword [ebp - 0x20], 0xb2811ffb
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10039711
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x524], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x100396fd
xor eax, eax
mov dword [ebp - 0x524], ebx
cmp dword [ebp - 0x524], eax
jl 0x100398c0
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jg 0x100398b1
mov dword [ebp - 0x24], 0xfffffff8
mov dword [ebp - 0x18], eax
jmp 0x10039752
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe8c], 0xcf58a412
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10039741
cmp dword [ebp - 0x2e8], 0x6c93
jg 0x10039777
mov eax, dword [ebp - 0x100]
cmp dword [ebp + eax*4 - 0x3c4], 0
je 0x10039777
mov eax, esi
jmp 0x10039779
xor eax, eax
xor edx, edx
cmp eax, 0xf5bf
mov eax, dword [ebp - 0x34]
setne dl
neg eax
xor ecx, ecx
cmp eax, edx
push 9
setle cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x100]
mov ecx, dword [ebp + eax*4 - 0x3c4]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
pop eax
setle dl
cmp edx, esi
mov dword [ebp - 0x64c], edx
sbb ecx, ecx
neg ecx
sub eax, ecx
je 0x100397d8
xor eax, eax
cmp dword [ebp - 0x2e8], eax
je 0x100397da
mov ecx, esi
jmp 0x100397dc
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x100]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x3c4]
add ecx, eax
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp + eax*4 - 0x3c4]
cmp ecx, eax
mov eax, dword [ebp - 0x100]
setge dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x3c4]
cmp eax, edx
sete cl
mov dword [ebp - 0x18], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x51c]
mov eax, dword [ebp - 0x104]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
neg edx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, dword [ebp - 0x3c4]
je 0x1003984e
mov edx, esi
cmp dword [ebp - 0x20], eax
jne 0x10039850
mov edx, eax
xor ecx, ecx
mov dword [ebp - 0xe88], edx
mov eax, dword [ebp - 0x34]
cmp edx, eax
setge cl
cmp ecx, 0xfafeceb2
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x100]
jne 0x1003987d
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x524], eax
je 0x1003987f
mov edx, esi
mov eax, dword [ebp - 0x100]
push 0
mov ecx, dword [ebp + eax*4 - 0x3c4]
xor eax, eax
cmp edx, 0x5762
setne al
add ecx, eax
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x48], eax
inc dword [ebp - 0x2c]
pop eax
cmp dword [ebp - 0x2c], ebx
jle 0x10039735
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x524]
jns 0x10039723
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x100398da
push eax
push eax
push 0x1544
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor eax, eax
inc dword [ebp - 0x100]
cmp dword [ebp - 0x100], ebx
jle 0x100396ee
or ecx, 0xffffffff
dec dword [ebp - 0x2e8]
cmp dword [ebp - 0x2e8], 0xfffffff1
jge 0x10039672
mov eax, dword [ebp - 0x2e8]
xor edx, edx
dec dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov ecx, edi
setle dl
mov dword [ebp - 0x18], edx
xor edx, edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
mov eax, dword [ebp - 0x50]
cmp ecx, eax
mov eax, dword [ebp - 0x2e8]
setne dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x2e8]
push 4
setg bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x2f0]
pop ebx
setne cl
add eax, ecx
or ecx, 0xffffffff
mov dword [ebp - 0x2e4], eax
mov dword [ebp - 0xad8], eax
xor eax, eax
mov dword [ebp - 0x2c], 0x9781
mov dword [ebp - 0x14], 0x2e91a049
mov dword [ebp - 0x48], 0x42796a45
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x30], 0x3cfebdab
mov dword [ebp - 0x3c], 0xf544bd1a
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x30], 0xc16b405b
mov dword [ebp - 0x1c], 0x6862eae2
mov dword [ebp - 0x30], 0x13aabdc9
mov dword [ebp - 0x4c], 0xdcc2
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100399d4
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10a0], 0xfffffffd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100399bc
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xfffffff4
jg 0x10039b76
mov dword [ebp - 0x20], 0x23e52509
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], 0x857617c0
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10039a1c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6dc], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10039a04
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x10039a24
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], 8
sbb eax, eax
neg eax
sub eax, 0x847d228d
neg eax
sbb eax, eax
xor edx, edx
inc eax
add eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x38]
imul ecx, eax, 0x953e
add ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x38]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
dec ecx
cmp ecx, dword [ebp - 0x14]
jg 0x10039a69
cmp dword [ebp - 0x20], eax
je 0x10039a69
mov eax, esi
cmp eax, 0xd2ae857b
sbb ecx, ecx
xor eax, eax
add ecx, 0xf6b6aeeb
cmp ecx, 0x55cc
setge al
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], esi
jl 0x10039a8c
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x48]
je 0x10039acf
mov dword [ebp - 0x30], esi
xor eax, eax
mov dword [ebp - 0x30], 0xef7d5944
mov dword [ebp - 0x18], eax
jmp 0x10039ac2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xaac], 0xcdd5376e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10039ab1
inc dword [ebp - 0x4c]
jmp 0x10039b61
push 9
pop eax
mov dword [ebp - 0x24], 0x31fd024c
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x10039b5c
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp dword [ebp + eax*4 - 0x6dc], ecx
je 0x10039b01
mov eax, dword [ebp - 0x3c]
cmp dword [ebp + eax*4 - 0x6dc], ecx
je 0x10039b01
mov ecx, esi
jmp 0x10039b03
xor eax, eax
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x6dc]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp + eax*4 - 0x6dc]
sub ecx, eax
inc ecx
imul ecx, dword [ebp - 0x6d4]
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp + eax*4 - 0x6dc]
mov eax, dword [ebp - 0x3c]
imul ecx, dword [ebp + eax*4 - 0x6dc]
mov eax, dword [ebp - 0x3c]
test ecx, ecx
setns dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x38], ecx
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], edi
jle 0x10039ae3
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff4
push 0
pop eax
push 0xffffffffffffffff
pop ecx
jle 0x100399e1
or ecx, ecx
mov dword [ebp - 0x4c], 0xb7136239
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x48], 0xd76270e7
mov dword [ebp - 0x38], 0xbdf11caf
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jge 0x10039bad
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x9f0], ecx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x10039b99
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jge 0x10039bcf
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xaec], 6
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 2
jl 0x10039bb6
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x10039c5e
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x24], 0xfffffffd
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x9e4]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x9f0]
cmp eax, ecx
setl dl
cmp edx, dword [ebp - 0x9e8]
jle 0x10039c0f
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov ecx, ebx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
sub ecx, eax
sub ecx, dword [ebp - 0x40]
mov eax, 0x8dacb314
sub ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
push 0
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x9e4]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x38]
cmp eax, esi
pop eax
setg cl
mov dword [ebp - 0xae8], ecx
inc dword [ebp - 0x1c]
xor edx, edx
cmp dword [ebp - 0x1c], 0xe
jge 0x10039bd7
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x44]
push 9
mov eax, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1e4]
cmp eax, ecx
mov eax, dword [ebp - 0x44]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x58]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x44]
setle bl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x1e4]
cmp eax, ebx
pop ebx
setne cl
xor edx, edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x1c], 0x696a485b
mov dword [ebp - 0x2c], 0x8a11015
mov dword [ebp - 0x20], 0xfff6
mov dword [ebp - 0x48], ebx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp eax, edx
setne cl
xor eax, eax
cmp ecx, 0x1d91e66c
setg al
sub eax, dword [ebp - 0x1c]
add eax, 0xbfb3a4d
jne 0x10039d77
cmp dword [ebp - 0x1c], eax
jne 0x10039d77
mov dword [ebp - 0x20], 0xa388
mov dword [ebp - 0x38], 0xef314d41
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
sub eax, 0xf90b8a44
neg eax
sbb eax, eax
or edx, 0xffffffff
inc eax
cmp eax, edx
je 0x10039d4d
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10039d4f
mov eax, esi
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0x9ba1
setle cl
xor eax, eax
cmp ecx, 0x73ede5c4
setne al
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x48], eax
jmp 0x10039ddd
mov dword [ebp - 0x38], 0x2de4bf74
xor ecx, ecx
mov dword [ebp - 0x48], 0xb622b607
mov dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
cmp eax, esi
setl cl
xor eax, eax
cmp ecx, ebx
mov ecx, dword [ebp - 0x38]
setle al
xor edx, edx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setge dl
xor ebx, ebx
cmp edx, dword [ebp - 0x48]
setg bl
xor ecx, ecx
cmp eax, ebx
setle cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
inc dword [ebp - 0x20]
cmp eax, ecx
je 0x10039dd5
mov eax, esi
jmp 0x10039dd7
xor eax, eax
mov dword [ebp - 0x2c], eax
or edx, 0xffffffff
xor eax, eax
mov dword [ebp - 0x4c], eax
push 2
pop ebx
cmp dword [ebp - 0x4c], eax
jg 0x10039f56
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x14], 0xfffffff7
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x24], 0x7b04800f
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x50], 0xe1dfe009
mov dword [ebp - 0x30], 0xd83d7839
mov dword [ebp - 0x30], 0x312fbb6b
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], 0xcc01
mov dword [ebp - 0x38], 0xa5fc0266
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
jmp 0x10039e47
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4b8], 0xd4e70302
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10039e36
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x4b4], eax
je 0x10039e63
mov ecx, esi
mov eax, dword [ebp - 0x50]
add eax, ecx
imul eax, dword [ebp - 0x50]
test eax, eax
jne 0x10039e77
mov ecx, eax
cmp dword [ebp - 0x2c], eax
je 0x10039e79
mov ecx, esi
mov eax, dword [ebp - 0x20]
sub ecx, eax
xor eax, eax
cmp ecx, dword [ebp - 0x20]
jne 0x10039e8a
cmp dword [ebp - 0x2c], eax
je 0x10039e91
cmp dword [ebp - 0x40], eax
je 0x10039e91
mov eax, esi
cmp eax, dword [ebp - 0x24]
jg 0x10039e9c
mov eax, dword [ebp - 0x4b4]
mov eax, dword [ebp - 0x14]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
cmp eax, 0x2f7f1c74
mov eax, dword [ebp - 0x4b8]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
neg ecx
jne 0x10039eca
xor eax, eax
cmp dword [ebp - 0x40], eax
jne 0x10039eca
mov eax, dword [ebp - 0x1c]
dec dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x50], 0xffffffeb
jmp 0x10039f38
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x6f0], eax
mov dword [ebp - 0x6ec], eax
mov dword [ebp - 0x6e8], eax
mov dword [ebp - 0x6e4], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x10039f25
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x6f0]
mov eax, dword [ebp - 0x6f0]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x6f0]
inc eax
mov dword [ebp - 0x6ec], eax
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], 0x17
jle 0x10039ee8
xor eax, eax
cmp dword [ebp - 0x44], eax
jne 0x10039f54
inc dword [ebp - 0x4c]
push 0xffffffffffffffff
pop edx
cmp dword [ebp - 0x4c], eax
jle 0x10039dee
xor eax, eax
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], eax
push 0
pop eax
push 0xffffffffffffffff
pop ecx
jle 0x100395fc
mov dword [ebp - 0x14], 0x2e91a049
or ecx, 0xffffffff
mov dword [ebp - 0x58], 0x42796a45
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x30], 0x3cfebdab
mov dword [ebp - 0x3c], 0xf544bd1a
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x30], 0xc16b405b
mov dword [ebp - 0x4c], 0x6862eae2
mov dword [ebp - 0x30], 0x13aabdc9
mov dword [ebp - 0x2c], 0xdcc2
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10039fd2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10f0], 0xfffffffd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10039fb9
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xfffffff4
jg 0x1003a176
mov dword [ebp - 0x20], 0x23e52509
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], 0x857617c0
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x1003a01c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x708], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1003a003
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x1003a024
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], 8
sbb eax, eax
neg eax
sub eax, 0x847d228d
neg eax
sbb eax, eax
xor edx, edx
inc eax
add eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x38]
imul ecx, eax, 0x953e
add ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x38]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
dec ecx
cmp ecx, dword [ebp - 0x14]
jg 0x1003a069
cmp dword [ebp - 0x20], eax
je 0x1003a069
mov eax, esi
cmp eax, 0xd2ae857b
sbb ecx, ecx
xor eax, eax
add ecx, 0xf6b6aeeb
cmp ecx, 0x55cc
setge al
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], esi
jl 0x1003a08c
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x58]
je 0x1003a0cf
mov dword [ebp - 0x30], esi
xor eax, eax
mov dword [ebp - 0x30], 0xef7d5944
mov dword [ebp - 0x18], eax
jmp 0x1003a0c2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xab0], 0xcdd5376e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003a0b1
inc dword [ebp - 0x2c]
jmp 0x1003a161
push 9
pop eax
mov dword [ebp - 0x24], 0x31fd024c
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x1003a15c
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp dword [ebp + eax*4 - 0x708], ecx
je 0x1003a101
mov eax, dword [ebp - 0x3c]
cmp dword [ebp + eax*4 - 0x708], ecx
je 0x1003a101
mov ecx, esi
jmp 0x1003a103
xor eax, eax
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x708]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp + eax*4 - 0x708]
sub ecx, eax
inc ecx
imul ecx, dword [ebp - 0x700]
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp + eax*4 - 0x708]
mov eax, dword [ebp - 0x3c]
imul ecx, dword [ebp + eax*4 - 0x708]
mov eax, dword [ebp - 0x3c]
test ecx, ecx
setns dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x38], ecx
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], edi
jle 0x1003a0e3
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff4
push 0
pop eax
push 0xffffffffffffffff
pop ecx
jle 0x10039fdf
or ecx, ecx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x58], 0xd76270e7
mov dword [ebp - 0x48], 0xbdf11caf
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 4
jge 0x1003a1a5
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x9d0], ecx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 4
jl 0x1003a190
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jge 0x1003a1c5
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xb00], 6
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x1003a1ad
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1003a255
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x24], 0xfffffffd
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x9c4]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x9d0]
cmp eax, ecx
setl dl
cmp edx, dword [ebp - 0x9c8]
jle 0x1003a205
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
push 4
pop ecx
sub ecx, eax
mov eax, 0x8dacb314
sub ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
push 0
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x9c4]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x48]
cmp eax, esi
pop eax
setg cl
mov dword [ebp - 0xafc], ecx
inc dword [ebp - 0x1c]
xor edx, edx
cmp dword [ebp - 0x1c], 0xe
jge 0x1003a1cd
mov dword [ebp - 0x1c], 0x2667a876
mov dword [ebp - 0x1c], 0x696a485b
mov dword [ebp - 0x2c], 0x8a11015
mov dword [ebp - 0x20], 0xfff6
push 9
pop eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp eax, edx
setne cl
xor eax, eax
cmp ecx, 0x1d91e66c
setg al
sub eax, dword [ebp - 0x1c]
add eax, 0xbfb3a4d
jne 0x1003a317
cmp dword [ebp - 0x1c], eax
jne 0x1003a317
mov dword [ebp - 0x20], 0xa388
mov dword [ebp - 0x38], 0xef314d41
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
sub eax, 0xf90b8a44
neg eax
sbb eax, eax
or ecx, 0xffffffff
inc eax
cmp eax, ecx
je 0x1003a2ed
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x1003a2ef
mov eax, esi
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0x9ba1
setle cl
xor eax, eax
cmp ecx, 0x73ede5c4
setne al
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x58], eax
jmp 0x1003a380
mov dword [ebp - 0x38], 0x2de4bf74
xor ecx, ecx
mov dword [ebp - 0x58], 0xb622b607
mov dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x1c]
cmp eax, esi
push 9
setl cl
xor eax, eax
pop edx
cmp ecx, edx
mov ecx, dword [ebp - 0x38]
setle al
xor edx, edx
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setge dl
xor ebx, ebx
cmp edx, dword [ebp - 0x58]
setg bl
xor ecx, ecx
cmp eax, ebx
setle cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
inc dword [ebp - 0x20]
cmp eax, ecx
je 0x1003a378
mov eax, esi
jmp 0x1003a37a
xor eax, eax
push 2
mov dword [ebp - 0x2c], eax
pop ebx
push 9
pop eax
mov dword [ebp - 0x24], eax
or eax, 0xffffffff
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], 0xfffffff7
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x24], 0x7b04800f
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x50], 0xe1dfe009
mov dword [ebp - 0x30], 0xd83d7839
mov dword [ebp - 0x30], 0x312fbb6b
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x30], 0xcc01
mov dword [ebp - 0x38], 0xa5fc0266
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x18], eax
jmp 0x1003a3e4
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x498], 0xd4e70302
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003a3d3
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x494], eax
je 0x1003a400
mov ecx, esi
mov eax, dword [ebp - 0x50]
add eax, ecx
imul eax, dword [ebp - 0x50]
test eax, eax
jne 0x1003a414
mov ecx, eax
cmp dword [ebp - 0x2c], eax
je 0x1003a416
mov ecx, esi
mov eax, dword [ebp - 0x20]
sub ecx, eax
xor eax, eax
cmp ecx, dword [ebp - 0x20]
jne 0x1003a427
cmp dword [ebp - 0x2c], eax
je 0x1003a42e
cmp dword [ebp - 0x14], eax
je 0x1003a42e
mov eax, esi
cmp eax, dword [ebp - 0x24]
jg 0x1003a439
mov eax, dword [ebp - 0x494]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
cmp eax, 0x2f7f1c74
mov eax, dword [ebp - 0x498]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
neg ecx
jne 0x1003a467
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x1003a467
mov eax, dword [ebp - 0x4c]
dec dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x50], 0xffffffeb
jmp 0x1003a4d5
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x720], eax
mov dword [ebp - 0x71c], eax
mov dword [ebp - 0x718], eax
mov dword [ebp - 0x714], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1003a4c2
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x720]
mov eax, dword [ebp - 0x720]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x720]
inc eax
mov dword [ebp - 0x71c], eax
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], 0x17
jle 0x1003a485
mov dword [ebp - 0x30], 0x88dcfd8f
mov dword [ebp - 0x3c], 0xa624cdb
mov dword [ebp - 0x24], 0xd9edbda7
mov dword [ebp - 0x558], esi
mov dword [ebp - 0x554], esi
mov dword [ebp - 0x550], esi
mov dword [ebp - 0x54c], esi
mov dword [ebp - 0x58], 0xcbdb
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x1003a522
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x558], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, 0x412
push 0xfffffffffffffffd
setle cl
xor edx, edx
sub ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
setne dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x3c]
setne cl
cmp ecx, 0xf58aae07
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x558]
mov eax, dword [ebp - 0x558]
mov eax, dword [ebp - 0x558]
mov ecx, dword [ebp - 0x558]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
pop eax
setg dl
sub eax, edx
je 0x1003a5aa
mov dword [ebp - 0x58], 0x58ed0bd2
mov dword [ebp - 0x48], 0x1d2d
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x48], eax
jmp 0x1003a5c1
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x1003a5c3
push 0xe6d
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1003a5df
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x21c], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003a5cb
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0xa10], eax
mov dword [ebp - 0xa0c], eax
mov dword [ebp - 0xa08], eax
mov dword [ebp - 0xa04], eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jge 0x1003a61d
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xb14], 0xfffffff8
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x1003a605
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jge 0x1003a63d
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x3ac], 0x28694a21
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x1003a625
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], eax
je 0x1003a696
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
test eax, eax
mov eax, dword [ebp - 0x3c]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xfffffffc
mov ecx, dword [ebp - 0x3c]
setl al
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x3c]
neg ecx
sbb ecx, ecx
inc ecx
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0xb10], ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x3a8]
jg 0x1003a694
mov edx, esi
jmp 0x1003a698
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x3ac]
xor ecx, ecx
cmp edx, eax
setg cl
sub ecx, 0x17a3f0ae
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3a8]
mov eax, dword [ebp - 0x3a8]
cmp eax, 0x51d5
mov eax, dword [ebp - 0x3a8]
setg dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0xa04], ecx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1003b2c6
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
xor ebx, ebx
inc ebx
push 9
pop ecx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x18], eax
jmp 0x1003a712
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x36c], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003a701
mov eax, dword [ebp - 0x36c]
xor ecx, ecx
cmp eax, ebx
mov eax, dword [ebp - 0x36c]
setge cl
xor edx, edx
add ecx, 0xc1fa9957
cmp ecx, eax
setl dl
xor eax, eax
mov dword [ebp - 0x58], edx
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x1003a754
push eax
push eax
push 0x23a1
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
xor eax, eax
mov dword [ebp - 0x50], 0x9781
or ecx, 0xffffffff
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x48], 0x3c0bf90a
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x2c], 0x580090ae
mov dword [ebp - 0x40], 0x23a3
mov dword [ebp - 0x24], 0xc2ae
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
jge 0x1003a7a3
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x150], 0xc93b4e1a
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], edi
jl 0x1003a78b
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
jge 0x1003a7c3
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x9b4], 0xed3c15d0
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], edi
jl 0x1003a7ab
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
jge 0x1003a7e2
push 9
pop ecx
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0xd3c], ecx
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], edi
jl 0x1003a7ce
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], ebx
jge 0x1003a802
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x39c], 7
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], ebx
jl 0x1003a7ea
xor eax, eax
mov dword [ebp - 0x44], 2
cmp dword [ebp - 0x44], eax
jl 0x1003aaab
or esi, 0xffffffff
jmp 0x1003a819
xor eax, eax
mov dword [ebp - 0x20], 0x4295ad7c
mov dword [ebp - 0x18], eax
jmp 0x1003a836
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2e0], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1003a825
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x150], ecx
mov eax, dword [ebp - 0x14c]
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x9b4]
neg eax
je 0x1003a874
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2dc], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x150]
test eax, eax
mov eax, dword [ebp - 0x44]
setle cl
cmp ecx, dword [ebp + eax*4 - 0x150]
je 0x1003a8a9
xor eax, eax
cmp dword [ebp - 0x2e0], eax
je 0x1003a8ab
mov eax, ebx
jmp 0x1003a8ab
xor eax, eax
add eax, 7
je 0x1003a8c0
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1003aaa5
jmp 0x1003aa9c
xor eax, eax
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x1003a90b
push 0x46f
push 0xa12
push 0x2211
push 0x102a
push 0x270b
push 0x2634
push 0x1e5c
push 0xb70
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Arc]
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jg 0x1003aa9c
mov dword [ebp - 0x18], 0x633c6688
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2d8]
mov eax, dword [ebp - 0x40]
push 0xfffffffffffffff7
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp + eax*4 - 0x150]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x2dc]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp + eax*4 - 0x150]
cmp dword [ebp - 0x2dc], 0xd3b05e26
sbb eax, eax
xor edx, edx
inc eax
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setge dl
mov dword [ebp + eax*4 - 0x9b4], edx
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp + eax*4 - 0x9b4]
mov ecx, dword [ebp - 0x18]
sub ecx, eax
mov eax, dword [ebp - 0x44]
imul ecx, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x44]
imul ecx, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x5d6221f4
setge dl
xor ecx, ecx
add edx, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x150]
cmp edx, eax
mov eax, dword [ebp - 0x2d8]
setne cl
xor edx, edx
cmp ecx, 0x1b866267
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x48]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x20]
setle cl
xor edx, edx
test ecx, ecx
setns dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2dc]
mov edx, dword [ebp - 0x2c]
setg cl
add eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
add edx, 0x680a316f
cmp edx, eax
setg cl
imul eax, ecx, 0x1b33
pop ecx
sub ecx, eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x150]
add eax, ecx
xor ecx, ecx
mov dword [ebp - 0x2dc], eax
cmp eax, 0x37ae
setle cl
imul ecx, dword [ebp - 0x38]
cmp ecx, 0xfffe
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xfffffff7
setge cl
xor eax, eax
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x2e0], eax
je 0x1003aa72
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x44]
xor edx, edx
mov ecx, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0xd3c]
cmp ecx, eax
setne dl
mov dword [ebp - 0x38], edx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 2
jle 0x1003a918
xor ebx, ebx
inc ebx
dec dword [ebp - 0x44]
jns 0x1003a817
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
dec dword [ebp - 0x39c]
or eax, 0xffffffff
mov dword [ebp - 0x2c], 0xb7136239
mov dword [ebp - 0x44], 0xf1dbeccc
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1003aae3
mov eax, dword [ebp - 0x28]
sub eax, 0x1a4d
jne 0x1003aae3
mov edx, eax
jmp 0x1003aae5
mov edx, ebx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp eax, edx
setle cl
neg ecx
je 0x1003adc7
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1003adc7
push 5
pop eax
mov dword [ebp - 0x34], eax
or eax, 0xffffffff
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x4c], 0x7ad46d23
mov dword [ebp - 0x24], 0xfffffffe
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x44]
je 0x1003ab41
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x28], eax
je 0x1003ab43
mov ecx, ebx
mov eax, dword [ebp - 0x44]
xor edx, edx
add eax, ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
mov eax, dword [ebp - 0x44]
setne dl
xor ecx, ecx
cmp eax, edx
setle cl
xor edx, edx
cmp ecx, 0x7bc6c895
setge dl
xor eax, eax
cmp edx, 0x5b68
setge al
cmp dword [ebp - 0x34], eax
jg 0x1003ad09
mov dword [ebp - 0x3c], 0xfffd
xor eax, eax
mov dword [ebp - 0x58], 0x7638
mov dword [ebp - 0x48], 0xc9c8a038
push 2
mov dword [ebp - 0x40], eax
pop ecx
cmp dword [ebp - 0x40], ecx
jge 0x1003abbb
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x8cc], 0
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ecx
jl 0x1003aba3
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 4
jge 0x1003abdd
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xec8], 0x2dbe4212
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 4
jl 0x1003abc4
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x1003ac1d
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x4c], eax
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x1003abf2
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x44], ecx
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1003ac1b
mov eax, ebx
jmp 0x1003ac1d
xor eax, eax
imul ecx, eax, 0x9794
xor edx, edx
mov eax, dword [ebp - 0x58]
cmp ecx, eax
setne dl
imul eax, edx, 0x4399
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x1003acfb
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x24], 0x7ce2a770
mov dword [ebp - 0x18], eax
jmp 0x1003ac60
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xde4], 0xd128b415
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1003ac4f
mov eax, dword [ebp - 0x4c]
mov ecx, 0xffffd9a5
neg eax
mov dword [ebp - 0xec8], 0xc2192b58
push 0
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x48]
sub ecx, eax
mov eax, dword [ebp - 0x44]
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x8cc]
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
imul ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov ecx, dword [ebp - 0xde4]
mov eax, dword [ebp - 0x3c]
setl dl
add ecx, edx
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x8cc]
cmp eax, ecx
setne dl
neg edx
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
pop eax
setle cl
sub ecx, dword [ebp - 0x4c]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], ebx
jle 0x1003ac40
jmp 0x1003ae09
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 4
jge 0x1003ad2c
push 9
pop ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xee0], ecx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 4
jl 0x1003ad17
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jge 0x1003ad4c
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x24c], 0x211a92b6
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jl 0x1003ad34
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003ad62
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003ad5f
push eax
call esi
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe2
jl 0x1003ad51
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp eax, 0xffff
setne cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x28]
add eax, 0xde3b
cmp eax, 4
sbb eax, eax
neg eax
mov dword [ebp - 0xee0], eax
mov eax, dword [ebp - 0x24c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x1003adaf
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x24]
dec eax
neg eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x24c]
mov dword [ebp - 0x14], eax
jmp 0x1003ae09
mov dword [ebp - 0x24], 0x98cb2cab
or eax, 0xffffffff
mov dword [ebp - 0x58], ebx
xor edx, edx
mov dword [ebp - 0x58], eax
push 5
pop eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
inc dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
mov eax, dword [ebp - 0x44]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x58], ebx
or eax, 0xffffffff
mov dword [ebp - 0x44], 0xf1dbeccc
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1003ae37
mov eax, dword [ebp - 0x28]
sub eax, 0x1a4d
jne 0x1003ae37
mov edx, eax
jmp 0x1003ae39
mov edx, ebx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp eax, edx
setle cl
neg ecx
je 0x1003b11b
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1003b11b
push 5
pop eax
mov dword [ebp - 0x34], eax
or eax, 0xffffffff
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x4c], 0x7ad46d23
mov dword [ebp - 0x24], 0xfffffffe
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x44]
je 0x1003ae95
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x28], eax
je 0x1003ae97
mov ecx, ebx
mov eax, dword [ebp - 0x44]
xor edx, edx
add eax, ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setne dl
xor ecx, ecx
cmp eax, edx
setle cl
xor edx, edx
cmp ecx, 0x7bc6c895
setge dl
xor eax, eax
cmp edx, 0x5b68
setge al
cmp dword [ebp - 0x34], eax
jg 0x1003b05d
mov dword [ebp - 0x40], 0xfffd
xor eax, eax
mov dword [ebp - 0x58], 0x7638
mov dword [ebp - 0x48], 0xc9c8a038
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x1003af0f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x8dc], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1003aef7
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1003af31
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xef8], 0x2dbe4212
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1003af18
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x1003af71
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x4c], eax
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x1003af46
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], ecx
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1003af6f
mov eax, ebx
jmp 0x1003af71
xor eax, eax
imul ecx, eax, 0x9794
xor edx, edx
mov eax, dword [ebp - 0x58]
cmp ecx, eax
setne dl
imul eax, edx, 0x4399
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x40], eax
jmp 0x1003b04f
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x24], 0x7ce2a770
mov dword [ebp - 0x18], eax
jmp 0x1003afb4
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe38], 0xd128b415
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1003afa3
mov eax, dword [ebp - 0x4c]
mov ecx, 0xffffd9a5
neg eax
mov dword [ebp - 0xef8], 0xc2192b58
push 0
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x48]
sub ecx, eax
mov eax, dword [ebp - 0x44]
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x8dc]
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x38]
imul ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
mov ecx, dword [ebp - 0xe38]
mov eax, dword [ebp - 0x40]
setl dl
add ecx, edx
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x8dc]
cmp eax, ecx
setne dl
neg edx
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
pop eax
setle cl
sub ecx, dword [ebp - 0x4c]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jle 0x1003af94
jmp 0x1003b15d
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1003b080
push 9
pop ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf10], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1003b06b
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x1003b0a0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x27c], 0x211a92b6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003b088
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x1003b0b6
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b0b3
push eax
call esi
xor eax, eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffe2
jl 0x1003b0a5
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp eax, 0xffff
setne cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x28]
add eax, 0xde3b
cmp eax, 4
sbb eax, eax
neg eax
mov dword [ebp - 0xf10], eax
mov eax, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x1003b103
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x24]
dec eax
neg eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x27c]
mov dword [ebp - 0x3c], eax
jmp 0x1003b15d
mov dword [ebp - 0x24], 0x98cb2cab
or eax, 0xffffffff
mov dword [ebp - 0x58], ebx
xor edx, edx
mov dword [ebp - 0x58], eax
push 5
pop eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
inc dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
mov eax, dword [ebp - 0x44]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x50]
xor edx, edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x21c]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x21c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x50]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setle bl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x21c]
cmp eax, ebx
setne cl
xor eax, eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x1003b1e6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10d0], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1003b1cd
xor eax, eax
mov dword [ebp - 0x20], edi
cmp dword [ebp - 0x20], eax
jl 0x1003b265
mov dword [ebp - 0x18], 2
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b226
push eax
push 0x1fa2
push 0xfa8
push 0x1bdf
push 0x19fb
push 0x1283
push 0x23c3
push eax
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1003b25b
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b23e
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b258
push eax
push eax
push 0x1544
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jle 0x1003b22b
dec dword [ebp - 0x20]
jns 0x1003b1ee
xor ebx, ebx
mov dword [ebp - 0x2c], eax
inc ebx
cmp dword [ebp - 0x2c], eax
jg 0x1003b2b4
mov dword [ebp - 0x38], 0xe57ad95e
mov dword [ebp - 0x58], 0x90197f0a
inc dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x58], 0xe41b66ba
xor eax, eax
mov dword [ebp - 0x58], ebx
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x1003b2a5
push eax
push eax
call dword [sym.imp.GDI32.dll_GetNearestPaletteIndex]
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x1003b2b2
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
jle 0x1003b270
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
push 0
pop eax
jle 0x1003a6f6
xor esi, esi
inc esi
mov dword [ebp - 0x18], edi
mov edi, dword [sym.imp.USER32.dll_CharUpperBuffW]
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b2e2
push 0x20c6
push eax
call edi
xor eax, eax
mov dword [ebp - 0x18], 0xffffffe2
jmp 0x1003b2fa
mov dword [ebp - 0x30], 6
cmp dword [ebp - 0x30], eax
jne 0x1003b300
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffee
jne 0x1003b2eb
mov dword [ebp - 0x1c], 0x2667a876
push 9
pop ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x30], 0x88dcfd8f
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1003b330
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1e8], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003b31c
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1003b3d0
mov dword [ebp - 0x20], 0x9781
xor edx, edx
mov dword [ebp - 0x2c], 0xb7136239
mov dword [ebp - 0x58], esi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x1e8]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1e8]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setle bl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x1e8]
cmp eax, ebx
setne cl
xor eax, eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x2c], eax
jmp 0x1003b3ba
cmp dword [ebp - 0x1c], eax
jne 0x1003b3bf
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
jle 0x1003b3b2
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x1003b33c
push 9
xor eax, eax
pop ecx
mov dword [ebp - 0x1c], 0x2667a876
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x30], 0x88dcfd8f
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1003b3fd
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x238], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003b3e9
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1003b49a
mov dword [ebp - 0x20], 0x9781
xor edx, edx
mov dword [ebp - 0x2c], 0xb7136239
mov dword [ebp - 0x58], esi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x238]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x238]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setle bl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x238]
cmp eax, ebx
setne cl
xor eax, eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x2c], eax
jmp 0x1003b487
cmp dword [ebp - 0x1c], eax
jne 0x1003b48c
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
jle 0x1003b47f
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x1003b409
xor eax, eax
push 3
pop ebx
mov dword [ebp - 0x18], ebx
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b4b3
push 0x20c6
push eax
call edi
xor eax, eax
mov dword [ebp - 0x18], 0xffffffe2
jmp 0x1003b4cb
mov dword [ebp - 0x30], 6
cmp dword [ebp - 0x30], eax
jne 0x1003b4d1
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffee
jne 0x1003b4bc
mov dword [ebp - 0x28], 0x76820624
mov dword [ebp - 0x24], 0xfc6088b9
mov dword [ebp - 0x24], 0x5c29478c
mov dword [ebp - 0x28], 0xfffffff5
jmp 0x1003b50c
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b509
push eax
push eax
push 0x1544
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor eax, eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe3
jne 0x1003b4ef
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub eax, ecx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, esi
setg al
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
imul eax, ecx, 0xd0f0
sub eax, 0x46dede40
jne 0x1003b573
mov ecx, eax
cmp dword [ebp - 0x28], eax
je 0x1003b575
mov ecx, esi
xor eax, eax
cmp ecx, 0xffffffff
setge al
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x18], ebx
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x1003b599
push 0x20c6
push eax
call edi
xor eax, eax
mov dword [ebp - 0x18], 0xffffffe2
jmp 0x1003b5b1
mov dword [ebp - 0x30], 6
cmp dword [ebp - 0x30], eax
jne 0x1003b5b7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffee
jne 0x1003b5a2
mov dword [ebp - 0x28], 0x76820624
mov dword [ebp - 0x24], 0xfc6088b9
mov dword [ebp - 0x24], 0x5c29478c
mov dword [ebp - 0x28], 0xfffffff5
jmp 0x1003b5f2
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b5ef
push eax
push eax
push 0x1544
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor eax, eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe3
jne 0x1003b5d5
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub eax, ecx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, esi
setg al
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
imul eax, ecx, 0xd0f0
sub eax, 0x46dede40
jne 0x1003b659
mov ecx, eax
cmp dword [ebp - 0x28], eax
je 0x1003b65b
mov ecx, esi
xor eax, eax
cmp ecx, 0xffffffff
setge al
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x30], 0x4dfecbe9
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x1003b693
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x208], 0x24a8c6a5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003b67a
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x1003b6b3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc40], 0x7b1891f7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003b69b
xor eax, eax
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x208], 7
jle 0x1003b783
mov dword [ebp - 0x50], 0x3629aa8
mov dword [ebp - 0x50], eax
jmp 0x1003b71f
mov dword [ebp - 0x18], 0xc93ee327
mov dword [ebp - 0x18], eax
jmp 0x1003b716
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b701
push 0x7d3
push eax
push 0xee0
push 0x1a19
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b713
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x1003b6de
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], 2
jle 0x1003b6d2
mov eax, dword [ebp - 0x50]
xor ecx, ecx
cmp eax, 0xffff
setne cl
test ecx, ecx
jns 0x1003b739
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0xc38]
xor ecx, ecx
imul eax, dword [ebp - 0x208]
push 0
imul eax, eax, 0x6f39
cmp eax, 0x715e
mov eax, dword [ebp - 0xc40]
setle cl
xor edx, edx
cmp ecx, esi
setge dl
xor ecx, ecx
cmp edx, eax
pop eax
sete cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x208]
cmp dword [ebp - 0x208], 7
jg 0x1003b6c6
mov dword [ebp - 0x208], 6
mov ecx, 0xffff
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x2c], 0xc77509cb
mov dword [ebp - 0x1c], 0xbb4f5ac3
mov dword [ebp - 0x14], 0x867a7bf7
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x30], 5
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1003b7de
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x200], 0x8bbd1883
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003b7c6
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003b7f4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x804], 0xa6c2e3a4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003b7e3
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x40], eax
jle 0x1003b804
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor ebx, ebx
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setle bl
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x40]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
add ecx, 0x7ddbf4df
jne 0x1003b83c
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x1c], eax
je 0x1003b83e
mov ecx, esi
mov eax, dword [ebp - 0x40]
sub eax, ecx
neg eax
sbb eax, eax
inc eax
cmp eax, 0x813
jge 0x1003b85a
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x1003b85c
mov ecx, esi
jmp 0x1003b85e
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x40]
xor edx, edx
sub ecx, eax
mov dword [ebp - 0x200], ecx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setle dl
xor ecx, ecx
cmp eax, edx
push 3
setg cl
xor eax, eax
cmp ecx, 0x5969
setl al
xor edx, edx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x7fc], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x14]
mov dword [ebp - 0x200], esi
imul ecx, dword [ebp - 0x14], 0xfff7
mov eax, dword [ebp - 0x38]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
imul ecx, esi
pop esi
sub ecx, dword [ebp - 0x14]
mov dword [ebp - 0x7fc], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7fc]
mov eax, dword [ebp - 0x804]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
cmp eax, 0x4a1a
setle cl
xor eax, eax
mov dword [ebp - 0x58], ecx
mov byte [ebp - 0xd], al
mov eax, 0x2d5e48d3
mov dword [ebp - 0x8f4], eax
mov dword [ebp - 0x8f0], eax
mov dword [ebp - 0x8ec], eax
mov dword [ebp - 0x8e8], eax
xor eax, eax
mov dword [ebp - 0x14], 0xf665683c
mov dword [ebp - 0x2c], 0xe6e7f737
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jg 0x1003b96d
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x8f4]
xor eax, eax
inc eax
mov dword [ebp - 0x2c], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x1003b953
xor eax, eax
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x2c], esi
cmp dword [ebp - 0x2c], eax
jl 0x1003b9d3
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003b98f
call ebx
push eax
call dword [sym.imp.USER32.dll_GetMenu]
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jg 0x1003b9ce
mov dword [ebp - 0x18], eax
jmp 0x1003b9ad
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb28], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003b99c
mov eax, dword [ebp - 0x2c]
push 0
mov eax, dword [ebp + eax*4 - 0x8f4]
mov dword [ebp - 0xb28], eax
inc dword [ebp - 0x14]
pop eax
cmp dword [ebp - 0x14], esi
jle 0x1003b997
dec dword [ebp - 0x2c]
jns 0x1003b97b
cmp byte [ebp - 0xd], 0
je 0x1003bac3
or ecx, 0xffffffff
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x1003ba05
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x874], 0x8529
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003b9ec
xor eax, eax
xor edx, edx
mov dword [ebp - 0x50], eax
inc edx
cmp dword [ebp - 0x50], edx
jg 0x1003babb
mov dword [ebp - 0x18], 0x8faaaeb9
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp + eax*4 - 0x874]
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x874], ecx
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jg 0x1003baad
mov ecx, 0x44455595
mov dword [ebp - 0x5b8], ecx
mov dword [ebp - 0x5b4], ecx
mov dword [ebp - 0x5b0], ecx
mov dword [ebp - 0x5ac], ecx
mov dword [ebp - 0x5b4], eax
cmp dword [ebp - 0x5b4], edx
jg 0x1003baa5
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003ba92
push 0x1a8
push eax
push 0x1131
push 0x6e3
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_ExtFloodFill]
xor edx, edx
xor eax, eax
inc edx
inc dword [ebp - 0x5b4]
cmp dword [ebp - 0x5b4], edx
jle 0x1003ba64
mov ecx, 0x44455595
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jle 0x1003ba3e
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], edx
jle 0x1003ba14
xor eax, eax
push 0x20c6
push eax
call edi
push 5
pop eax
mov dword [ebp - 0x50], eax
or edi, 0xffffffff
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x24], 0xc6eed1e1
mov dword [ebp - 0x50], 0xffffffe8
cmp dword [ebp - 0x50], 0xfffffffc
push 0xfffffffffffffffb
pop ecx
jl 0x1003bb8f
xor eax, eax
mov dword [ebp - 0x330], ecx
mov dword [ebp - 0x32c], ecx
mov dword [ebp - 0x328], ecx
mov dword [ebp - 0x324], ecx
mov dword [ebp - 0x32c], eax
cmp dword [ebp - 0x32c], ecx
jge 0x1003bb82
mov dword [ebp - 0x24], 0x6fe5
xor ecx, ecx
mov dword [ebp - 0x30], 0xa1f05067
mov eax, dword [ebp - 0x328]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x50]
sub edx, 0x53f0
cmp edx, eax
setge cl
xor eax, eax
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
jne 0x1003bb58
mov eax, dword [ebp - 0x324]
mov eax, dword [ebp - 0x32c]
sub eax, 8
neg eax
push 0xfffffffffffffffb
sbb eax, eax
inc eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
pop ecx
mov dword [ebp - 0x30], ecx
dec dword [ebp - 0x32c]
cmp dword [ebp - 0x32c], ecx
jl 0x1003bb12
xor eax, eax
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], 0xfffffffc
jge 0x1003baec
mov dword [ebp - 0x2c], 0xffffffe2
mov ecx, 0xb55bb2c2
cmp dword [ebp - 0x2c], 0xffffffee
je 0x1003bd3c
xor eax, eax
mov dword [ebp - 0x2cc], ecx
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x2c4], ecx
mov dword [ebp - 0x2c0], ecx
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x30], 0xd090d790
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1003bbed
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe50], 0x4be3d0e7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003bbd5
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], esi
jg 0x1003bd1e
xor edi, edi
inc edi
or ecx, 0xffffffff
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1003bc25
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x740], 0xd96753f3
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1003bc0d
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003bc3b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x654], 4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1003bc2a
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp + eax*4 - 0x2cc]
mov eax, 0xffff
mov dword [ebp - 0x740], esi
mov edx, dword [ebp - 0x2c8]
inc edx
neg edx
sbb edx, edx
inc edx
sub edx, eax
mov eax, dword [ebp - 0x3c]
neg edx
sbb edx, edx
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x2cc]
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setl cl
xor edx, edx
cmp esi, ecx
sete dl
cmp edx, dword [ebp + eax*4 - 0x2cc]
jg 0x1003bc9a
xor eax, eax
cmp dword [ebp - 0x2c4], eax
je 0x1003bc9c
mov esi, edi
jmp 0x1003bc9e
xor eax, eax
mov esi, eax
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x2cc]
mov eax, dword [ebp - 0x3c]
add edx, dword [ebp + eax*4 - 0x2cc]
mov eax, dword [ebp - 0x2cc]
cmp esi, eax
setne cl
xor eax, eax
cmp edx, ecx
setl al
mov dword [ebp - 0x30], eax
mov dword [ebp - 0xe48], edi
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp + eax*4 - 0x2cc]
imul eax, dword [ebp - 0x3c]
imul ecx, eax, 0x65f5
mov eax, dword [ebp - 0x3c]
add ecx, dword [ebp + eax*4 - 0x2cc]
xor eax, eax
mov dword [ebp - 0x654], ecx
mov dword [ebp - 0x30], edi
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x1003bd07
push eax
call dword [sym.imp.COMDLG32.dll_FindTextW]
inc dword [ebp - 0x3c]
push 3
pop esi
push 0
pop eax
cmp dword [ebp - 0x3c], esi
jle 0x1003bbfc
mov ecx, 0xb55bb2c2
mov dword [ebp - 0x30], 6
cmp dword [ebp - 0x30], eax
jne 0x1003bd37
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffee
jne 0x1003bba7
or edi, 0xffffffff
jmp 0x1003bd3e
xor eax, eax
mov dword [ebp - 0x598], edi
mov dword [ebp - 0x594], edi
mov dword [ebp - 0x590], edi
push 0xfffffffffffffffb
mov dword [ebp - 0x58c], edi
pop ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], 0x60fc
mov dword [ebp - 0x30], 0x47fce3ba
push 2
mov dword [ebp - 0x14], eax
pop edx
cmp dword [ebp - 0x14], edx
jge 0x1003bd8d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1a0], 0x29000d4e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1003bd75
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jge 0x1003bdad
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf78], 0xddd2e786
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1003bd95
xor eax, eax
xor edi, edi
mov dword [ebp - 0x19c], esi
inc edi
cmp dword [ebp - 0x19c], eax
jl 0x1003beac
mov dword [ebp - 0x50], 0x7359b504
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 6
mov dword [ebp - 0x18], eax
jmp 0x1003bdec
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x83c], 0xdd7582ba
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1003bddb
mov eax, dword [ebp - 0x19c]
cmp dword [ebp + eax*4 - 0x598], 0
je 0x1003be42
mov eax, dword [ebp - 0x19c]
push 2
mov ecx, dword [ebp + eax*4 - 0x598]
mov eax, dword [ebp - 0x19c]
add ecx, 0x3c225155
mov edx, dword [ebp + eax*4 - 0x598]
mov eax, dword [ebp - 0x594]
imul edx, ecx
xor ecx, ecx
cmp edx, eax
pop edx
setne cl
cmp ecx, dword [ebp - 0x19c]
jne 0x1003be42
mov eax, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x19c]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x598]
test eax, eax
setne cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x50], eax
jmp 0x1003be98
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x1003be82
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xee8], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1003be6e
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x1003be90
dec dword [ebp - 0x83c]
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x1003be87
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], esi
jle 0x1003be66
dec dword [ebp - 0x19c]
push 0
pop eax
jns 0x1003bdc2
mov dword [ebp - 0x28], 0x76820624
mov dword [ebp - 0x24], 0xfc6088b9
mov dword [ebp - 0x24], 0x5c29478c
mov dword [ebp - 0x28], 0xfffffff5
jmp 0x1003bee7
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003bee4
push eax
push eax
push 0x1544
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor eax, eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe3
jne 0x1003beca
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub eax, ecx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, edi
setg al
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
imul eax, ecx, 0xd0f0
sub eax, 0x46dede40
jne 0x1003bf4e
mov ecx, eax
cmp dword [ebp - 0x28], eax
je 0x1003bf50
mov ecx, edi
or edx, 0xffffffff
xor eax, eax
cmp ecx, edx
push 0xfffffffffffffffb
setge al
neg eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x5d8], edx
mov dword [ebp - 0x5d4], edx
mov dword [ebp - 0x5d0], edx
mov dword [ebp - 0x5cc], edx
pop eax
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x30], 0x60fc
mov dword [ebp - 0x30], 0x47fce3ba
push 2
mov dword [ebp - 0x14], eax
pop edx
cmp dword [ebp - 0x14], edx
jge 0x1003bfb0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x198], 0x29000d4e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1003bf98
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jge 0x1003bfd0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xff0], 0xddd2e786
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1003bfb8
xor eax, eax
mov dword [ebp - 0x194], esi
cmp dword [ebp - 0x194], eax
jl 0x1003c0cc
mov dword [ebp - 0x50], 0x7359b504
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 6
mov dword [ebp - 0x18], eax
jmp 0x1003c00c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x894], 0xdd7582ba
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1003bffb
mov eax, dword [ebp - 0x194]
cmp dword [ebp + eax*4 - 0x5d8], 0
je 0x1003c062
mov eax, dword [ebp - 0x194]
push 2
mov ecx, dword [ebp + eax*4 - 0x5d8]
mov eax, dword [ebp - 0x194]
add ecx, 0x3c225155
mov edx, dword [ebp + eax*4 - 0x5d8]
mov eax, dword [ebp - 0x5d4]
imul edx, ecx
xor ecx, ecx
cmp edx, eax
pop edx
setne cl
cmp ecx, dword [ebp - 0x194]
jne 0x1003c062
mov eax, dword [ebp - 0x194]
mov eax, dword [ebp - 0x194]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x5d8]
test eax, eax
setne cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x50], eax
jmp 0x1003c0b8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x1003c0a2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xf00], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1003c08e
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x1003c0b0
dec dword [ebp - 0x894]
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x1003c0a7
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], esi
jle 0x1003c086
dec dword [ebp - 0x194]
push 0
pop eax
jns 0x1003bfe2
mov edi, dword [sym.imp.KERNEL32.dll_SwitchToThread]
mov dword [ebp - 0x18], 0x91a049fe
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003c0e6
call edi
xor eax, eax
mov dword [ebp - 0x18], 0xfffffff6
jmp 0x1003c118
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003c115
push eax
push 0x1fba
push 0x20a5
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetCharABCWidthsW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1d
jge 0x1003c0ef
mov dword [ebp - 0x18], 0x91a049fe
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003c132
call edi
xor eax, eax
mov dword [ebp - 0x18], 0xfffffff6
jmp 0x1003c164
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003c161
push eax
push 0x1fba
push 0x20a5
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetCharABCWidthsW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1d
jge 0x1003c13b
mov dword [ebp - 0x1c], 0xe2db
xor edx, edx
mov dword [ebp - 0x20], 0x7263b0a6
inc edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x18], eax
jmp 0x1003c19e