Function at 0x428dd3
Capabilities:
Contain obfuscated stackstrings
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4de7ce
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x4b4
push ebx
push esi
push edi
mov eax, dword [0x524330]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x400], ecx
and dword [ebp - 0x1fc], 0
mov dword [ebp - 4], 1
mov byte [ebp - 4], 2
mov dword [ebp - 0x18], 0x14
and dword [ebp - 0x14], 0
and dword [ebp - 0x1c], 0
jmp 0x428e32
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x18]
jae 0x428e82
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
mov eax, dword [ecx + eax + 0x4f4]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x200], eax
xor eax, eax
cmp dword [ebp - 0x200], 0
sete al
movzx eax, al
test eax, eax
jne 0x428e7e
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
jmp 0x428e80
jmp 0x428e82
jmp 0x428e2b
push 0x4f534c
lea ecx, [ebp - 0xdc]
call fcn.00403a33
mov dword [ebp - 0x404], eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1fc]
or eax, 1
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x210], eax
lea eax, [ebp + 8]
push eax
push dword [ebp - 0x210]
lea ecx, [ebp - 0xec]
call fcn.0044f086
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0xe4]
push eax
lea ecx, [ebp + 8]
call fcn.0044a386
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x408]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0xec]
push eax
mov ecx, dword [ebp - 0x240]
call fcn.004965d9
mov byte [ebp - 0x409], al
movzx eax, byte [ebp - 0x409]
neg eax
sbb eax, eax
inc eax
movzx eax, al
test eax, eax
je 0x428f87
push 0x4f5368
lea ecx, [ebp - 0x108]
call fcn.00403a33
mov dword [ebp - 0x410], eax
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x1fc]
or eax, 2
mov dword [ebp - 0x1fc], eax
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp + 8]
call fcn.0044a002
mov dword [ebp - 0x414], eax
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax]
call fcn.004849b9
mov byte [ebp - 0x415], al
movzx eax, byte [ebp - 0x415]
test eax, eax
je 0x428f87
mov dword [ebp - 0x41c], 1
jmp 0x428f8e
and dword [ebp - 0x41c], 0
mov al, byte [ebp - 0x41c]
mov byte [ebp - 0xbd], al
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x1fc]
and eax, 2
je 0x428fc2
and dword [ebp - 0x1fc], 0xfffffffd
push 0
push 1
lea ecx, [ebp - 0x108]
call fcn.00404010
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x1fc]
and eax, 1
je 0x428fea
and dword [ebp - 0x1fc], 0xfffffffe
push 0
push 1
lea ecx, [ebp - 0xdc]
call fcn.00404010
movzx eax, byte [ebp - 0xbd]
test eax, eax
je 0x429fdd
push 0x4f5384
lea ecx, [ebp - 0x124]
call fcn.00403a33
mov dword [ebp - 0x420], eax
mov byte [ebp - 4], 5
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp + 8]
call fcn.0044a002
mov dword [ebp - 0x424], eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x424]
mov ecx, dword [eax]
call fcn.00484a34
mov dword [ebp - 0x428], eax
mov byte [ebp - 4], 7
push 0
push 1
lea ecx, [ebp - 0x124]
call fcn.00404010
and dword [ebp - 0x38], 0
jmp 0x42905f
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x28]
sar eax, 2
cmp dword [ebp - 0x38], eax
jae 0x429fd1
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x28]
sar eax, 2
cmp dword [ebp - 0x38], eax
jb 0x429084
call fcn.004bdbbd
xor eax, eax
jne 0x429084
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x38]
lea eax, [eax + ecx*4]
mov dword [ebp - 0x25c], eax
lea eax, [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x25c]
mov ecx, dword [eax]
call fcn.00484a5f
mov dword [ebp - 0x42c], eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], eax
push str.downloadurl
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x128], esp
mov dword [ebp - 0x260], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x260]
call fcn.0044a14d
lea eax, [ebp - 0x6c]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x430], eax
mov byte [ebp - 4], 9
lea eax, [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x400]
call fcn.0040e51b
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x4f4]
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x264]
call fcn.00403d36
push str.exename
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x12c], esp
mov dword [ebp - 0x268], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x268]
call fcn.0044a14d
lea eax, [ebp - 0x130]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x270], eax
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x4f8]
mov dword [ebp - 0x26c], eax
push dword [ebp - 0x270]
mov ecx, dword [ebp - 0x26c]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x130]
sub eax, 0x10
mov dword [ebp - 0x274], eax
mov ecx, dword [ebp - 0x274]
call fcn.0040110c
push 0x4f53c8
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x134], esp
mov dword [ebp - 0x278], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x278]
call fcn.0044a14d
lea eax, [ebp - 0x138]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x280], eax
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x4fc]
mov dword [ebp - 0x27c], eax
push dword [ebp - 0x280]
mov ecx, dword [ebp - 0x27c]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x138]
sub eax, 0x10
mov dword [ebp - 0x284], eax
mov ecx, dword [ebp - 0x284]
call fcn.0040110c
push 0x4f53d4
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x13c], esp
mov dword [ebp - 0x288], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x288]
call fcn.0044a14d
lea eax, [ebp - 0x140]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp - 0x43c]
mov dword [ebp - 0x290], eax
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x504]
mov dword [ebp - 0x28c], eax
push dword [ebp - 0x290]
mov ecx, dword [ebp - 0x28c]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x140]
sub eax, 0x10
mov dword [ebp - 0x294], eax
mov ecx, dword [ebp - 0x294]
call fcn.0040110c
push 0x4f53e4
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x144], esp
mov dword [ebp - 0x298], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x298]
call fcn.0044a14d
lea eax, [ebp - 0x148]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x440]
mov dword [ebp - 0x2a0], eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x508]
mov dword [ebp - 0x29c], eax
push dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x29c]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x148]
sub eax, 0x10
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x2a4]
call fcn.0040110c
push 0x4f53ec
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x14c], esp
mov dword [ebp - 0x2a8], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2a8]
call fcn.0044a14d
lea eax, [ebp - 0x150]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x444]
mov dword [ebp - 0x2b0], eax
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x50c]
mov dword [ebp - 0x2ac], eax
push dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x2ac]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x150]
sub eax, 0x10
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp - 0x2b4]
call fcn.0040110c
push 0x4f53fc
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x154], esp
mov dword [ebp - 0x2b8], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2b8]
call fcn.0044a14d
lea eax, [ebp - 0x158]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x448], eax
mov eax, dword [ebp - 0x448]
mov dword [ebp - 0x2c0], eax
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x660]
mov dword [ebp - 0x2bc], eax
push dword [ebp - 0x2c0]
mov ecx, dword [ebp - 0x2bc]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x158]
sub eax, 0x10
mov dword [ebp - 0x2c4], eax
mov ecx, dword [ebp - 0x2c4]
call fcn.0040110c
push str.description
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x15c], esp
mov dword [ebp - 0x2c8], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2c8]
call fcn.0044a14d
lea eax, [ebp - 0x160]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x2d0], eax
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x664]
mov dword [ebp - 0x2cc], eax
push dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2cc]
call fcn.00403d36
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x160]
sub eax, 0x10
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
call fcn.0040110c
mov eax, dword [ebp + 0x28]
imul eax, eax, 0x23b50
mov ecx, dword [0x526c08]
mov byte [ecx + eax + 0x33e2], 1
push str.post_install_check
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x164], esp
mov dword [ebp - 0x2d8], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2d8]
call fcn.0044a14d
lea eax, [ebp - 0x64]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x450], eax
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x64]
push eax
call fcn.00460d83
pop ecx
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x510]
mov dword [ebp - 0x2dc], eax
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x2dc]
call fcn.00403d36
push 0x4f5448
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x168], esp
mov dword [ebp - 0x2e0], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2e0]
call fcn.0044a14d
lea eax, [ebp - 0x70]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x454], eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x38]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x514]
mov dword [ebp - 0x2e4], eax
lea eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x2e4]
call fcn.00403d36
push str.switches
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x16c], esp
mov dword [ebp - 0x2e8], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0044a14d
lea eax, [ebp - 0x68]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x458], eax
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x400]
call fcn.0040e51b
lea eax, [ebp - 0x68]
push eax
call fcn.00460d83
pop ecx
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x500]
mov dword [ebp - 0x2ec], eax
lea eax, [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x2ec]
call fcn.00403d36
push str.launchexepath
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x170], esp
mov dword [ebp - 0x2f0], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2f0]
call fcn.0044a14d
lea eax, [ebp - 0x3c]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x45c], eax
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x3c]
push eax
call fcn.00460d83
pop ecx
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x668]
mov dword [ebp - 0x2f4], eax
lea eax, [ebp - 0x3c]
push eax
mov ecx, dword [ebp - 0x2f4]
call fcn.00403d36
push str.launchexeswitches
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x174], esp
mov dword [ebp - 0x2f8], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2f8]
call fcn.0044a14d
lea eax, [ebp - 0x178]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x460]
mov dword [ebp - 0x2fc], eax
mov byte [ebp - 4], 0x15
push dword [ebp - 0x2fc]
lea ecx, [ebp - 0x68]
call fcn.00403d36
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x178]
sub eax, 0x10
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x300]
call fcn.0040110c
lea eax, [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x400]
call fcn.0040e51b
lea eax, [ebp - 0x68]
push eax
call fcn.00460d83
pop ecx
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x66c]
mov dword [ebp - 0x304], eax
lea eax, [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x304]
call fcn.00403d36
push 0x4f54b8
lea ecx, [ebp - 0x198]
call fcn.00403a33
mov dword [ebp - 0x464], eax
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x1fc]
or eax, 4
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x314], eax
lea eax, [ebp - 0x60]
push eax
push dword [ebp - 0x314]
lea ecx, [ebp - 0x1a8]
call fcn.0044f086
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x60]
call fcn.0044a386
mov dword [ebp - 0x468], eax
mov eax, dword [ebp - 0x468]
mov dword [ebp - 0x344], eax
lea eax, [ebp - 0x1a8]
push eax
mov ecx, dword [ebp - 0x344]
call fcn.004965d9
mov byte [ebp - 0x469], al
movzx eax, byte [ebp - 0x469]
neg eax
sbb eax, eax
inc eax
movzx eax, al
test eax, eax
je 0x429953
push 0x4f54e4
lea ecx, [ebp - 0x1c4]
call fcn.00403a33
mov dword [ebp - 0x470], eax
mov dword [ebp - 4], 0x17
mov eax, dword [ebp - 0x1fc]
or eax, 8
mov dword [ebp - 0x1fc], eax
lea eax, [ebp - 0x1c4]
push eax
lea ecx, [ebp - 0x60]
call fcn.0044a002
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0x474]
mov ecx, dword [eax]
call fcn.004849b9
mov byte [ebp - 0x475], al
movzx eax, byte [ebp - 0x475]
test eax, eax
je 0x429953
mov dword [ebp - 0x47c], 1
jmp 0x42995a
and dword [ebp - 0x47c], 0
mov al, byte [ebp - 0x47c]
mov byte [ebp - 0x179], al
mov dword [ebp - 4], 0x16
mov eax, dword [ebp - 0x1fc]
and eax, 8
je 0x42998e
and dword [ebp - 0x1fc], 0xfffffff7
push 0
push 1
lea ecx, [ebp - 0x1c4]
call fcn.00404010
mov dword [ebp - 4], 0x14
mov eax, dword [ebp - 0x1fc]
and eax, 4
je 0x4299b6
and dword [ebp - 0x1fc], 0xfffffffb
push 0
push 1
lea ecx, [ebp - 0x198]
call fcn.00404010
movzx eax, byte [ebp - 0x179]
test eax, eax
je 0x429d70
push str.post_install_check_v2
lea ecx, [ebp - 0x1e0]
call fcn.00403a33
mov dword [ebp - 0x480], eax
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x60]
call fcn.0044a002
mov dword [ebp - 0x484], eax
lea eax, [ebp - 0x8c]
push eax
mov eax, dword [ebp - 0x484]
mov ecx, dword [eax]
call fcn.00484a34
mov dword [ebp - 0x488], eax
mov byte [ebp - 4], 0x1a
push 0
push 1
lea ecx, [ebp - 0x1e0]
call fcn.00404010
and dword [ebp - 0x90], 0
jmp 0x429a37
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x7c]
sub eax, dword [ebp - 0x80]
sar eax, 2
cmp dword [ebp - 0x90], eax
jae 0x429d61
mov eax, dword [ebp - 0x7c]
sub eax, dword [ebp - 0x80]
sar eax, 2
cmp dword [ebp - 0x90], eax
jb 0x429a62
call fcn.004bdbbd
xor eax, eax
jne 0x429a62
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x90]
lea eax, [eax + ecx*4]
mov dword [ebp - 0x360], eax
lea eax, [ebp - 0xb8]
push eax
mov eax, dword [ebp - 0x360]
mov ecx, dword [eax]
call fcn.00484a5f
mov dword [ebp - 0x48c], eax
mov byte [ebp - 4], 0x1b
push 0x4f553c
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x1e4], esp
mov dword [ebp - 0x364], eax
lea eax, [ebp - 0xb8]
push eax
mov ecx, dword [ebp - 0x364]
call fcn.0044a14d
lea eax, [ebp - 0x94]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x490], eax
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x94]
push eax
call fcn.00460d83
pop ecx
push 0x4f5544
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x1e8], esp
mov dword [ebp - 0x368], eax
lea eax, [ebp - 0xb8]
push eax
mov ecx, dword [ebp - 0x368]
call fcn.0044a14d
lea eax, [ebp - 0x98]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x494], eax
mov byte [ebp - 4], 0x1d
push 0x4f5550
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x1ec], esp
mov dword [ebp - 0x36c], eax
lea eax, [ebp - 0xb8]
push eax
mov ecx, dword [ebp - 0x36c]
call fcn.0044a14d
lea eax, [ebp - 0xbc]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x498], eax
mov byte [ebp - 4], 0x1e
push 0x4f555c
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x1f0], esp
mov dword [ebp - 0x370], eax
lea eax, [ebp - 0xb8]
push eax
mov ecx, dword [ebp - 0x370]
call fcn.0044a14d
lea eax, [ebp - 0x1f4]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x49c]
mov dword [ebp - 0x378], eax
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x90]
shl eax, 4
mov ecx, dword [ebp - 0x40]
imul ecx, ecx, 0x188
mov edx, dword [ebp + 0x28]
imul edx, edx, 0x23b50
add edx, dword [0x526c08]
lea ecx, [edx + ecx + 0x4f4]
lea eax, [ecx + eax + 0x24]
mov dword [ebp - 0x374], eax
push dword [ebp - 0x378]
mov ecx, dword [ebp - 0x374]
call fcn.00403d36
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp - 0x1f4]
sub eax, 0x10
mov dword [ebp - 0x37c], eax
mov ecx, dword [ebp - 0x37c]
call fcn.0040110c
mov eax, dword [ebp - 0x90]
shl eax, 4
mov ecx, dword [ebp - 0x40]
imul ecx, ecx, 0x188
mov edx, dword [ebp + 0x28]
imul edx, edx, 0x23b50
add edx, dword [0x526c08]
lea ecx, [edx + ecx + 0x4f4]
lea eax, [ecx + eax + 0x28]
mov dword [ebp - 0x380], eax
lea eax, [ebp - 0x94]
push eax
mov ecx, dword [ebp - 0x380]
call fcn.00403d36
mov eax, dword [ebp - 0x90]
shl eax, 4
mov ecx, dword [ebp - 0x40]
imul ecx, ecx, 0x188
mov edx, dword [ebp + 0x28]
imul edx, edx, 0x23b50
add edx, dword [0x526c08]
lea ecx, [edx + ecx + 0x4f4]
lea eax, [ecx + eax + 0x2c]
mov dword [ebp - 0x384], eax
lea eax, [ebp - 0x98]
push eax
mov ecx, dword [ebp - 0x384]
call fcn.00403d36
mov eax, dword [ebp - 0x90]
shl eax, 4
mov ecx, dword [ebp - 0x40]
imul ecx, ecx, 0x188
mov edx, dword [ebp + 0x28]
imul edx, edx, 0x23b50
add edx, dword [0x526c08]
lea ecx, [edx + ecx + 0x4f4]
lea eax, [ecx + eax + 0x30]
mov dword [ebp - 0x388], eax
lea eax, [ebp - 0xbc]
push eax
mov ecx, dword [ebp - 0x388]
call fcn.00403d36
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0xbc]
sub eax, 0x10
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x38c]
call fcn.0040110c
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x98]
sub eax, 0x10
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x390]
call fcn.0040110c
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x94]
sub eax, 0x10
mov dword [ebp - 0x394], eax
mov ecx, dword [ebp - 0x394]
call fcn.0040110c
mov byte [ebp - 4], 0x1a
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xb8]
call fcn.0044cee4
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xb8]
call fcn.00497af8
jmp 0x429a2a
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x8c]
call fcn.00449f42
push str.execute
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x1f8], esp
mov dword [ebp - 0x3a0], eax
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x3a0]
call fcn.0044a14d
lea eax, [ebp - 0x74]
push eax
call fcn.0045b95c
add esp, 0x28
mov dword [ebp - 0x4a0], eax
mov byte [ebp - 4], 0x21
push 0x4f5578
lea ecx, [ebp - 0x74]
call fcn.0040abe6
mov dword [ebp - 0x4a4], eax
cmp dword [ebp - 0x4a4], 0
jne 0x429e6f
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x65c]
mov dword [ebp - 0x3b0], eax
mov eax, 0x4f5580
test eax, eax
jne 0x429e02
and dword [ebp - 0x3ac], 0
jmp 0x429e54
mov dword [ebp - 0x4a8], 0x4f5580
mov eax, dword [ebp - 0x4a8]
inc eax
mov dword [ebp - 0x4ac], eax
mov eax, dword [ebp - 0x4a8]
mov al, byte [eax]
mov byte [ebp - 0x4ad], al
inc dword [ebp - 0x4a8]
cmp byte [ebp - 0x4ad], 0
jne 0x429e19
mov eax, dword [ebp - 0x4a8]
sub eax, dword [ebp - 0x4ac]
mov dword [ebp - 0x4b4], eax
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x3ac], eax
push dword [ebp - 0x3ac]
push 0x4f5580
mov ecx, dword [ebp - 0x3b0]
call fcn.0040417d
jmp 0x429f0e
mov eax, dword [ebp - 0x40]
imul eax, eax, 0x188
mov ecx, dword [ebp + 0x28]
imul ecx, ecx, 0x23b50
add ecx, dword [0x526c08]
lea eax, [ecx + eax + 0x65c]
mov dword [ebp - 0x3b8], eax
mov eax, 0x4f5588
test eax, eax
jne 0x429ea6
and dword [ebp - 0x3b4], 0
jmp 0x429ef8
mov dword [ebp - 0x4b8], 0x4f5588
mov eax, dword [ebp - 0x4b8]
inc eax
mov dword [ebp - 0x4bc], eax
mov eax, dword [ebp - 0x4b8]
mov al, byte [eax]
mov byte [ebp - 0x4bd], al
inc dword [ebp - 0x4b8]
cmp byte [ebp - 0x4bd], 0
jne 0x429ebd
mov eax, dword [ebp - 0x4b8]
sub eax, dword [ebp - 0x4bc]
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x4c4]
mov dword [ebp - 0x3b4], eax
push dword [ebp - 0x3b4]
push 0x4f5588
mov ecx, dword [ebp - 0x3b8]
call fcn.0040417d
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x74]
sub eax, 0x10
mov dword [ebp - 0x3bc], eax
mov ecx, dword [ebp - 0x3bc]
call fcn.0040110c
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x3c]
sub eax, 0x10
mov dword [ebp - 0x3c0], eax
mov ecx, dword [ebp - 0x3c0]
call fcn.0040110c
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x68]
sub eax, 0x10
mov dword [ebp - 0x3c4], eax
mov ecx, dword [ebp - 0x3c4]
call fcn.0040110c
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x70]
sub eax, 0x10
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0x3c8]
call fcn.0040110c
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x64]
sub eax, 0x10
mov dword [ebp - 0x3cc], eax
mov ecx, dword [ebp - 0x3cc]
call fcn.0040110c
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x6c]
sub eax, 0x10
mov dword [ebp - 0x3d0], eax
mov ecx, dword [ebp - 0x3d0]
call fcn.0040110c
mov byte [ebp - 4], 7
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x60]
call fcn.0044cee4
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.00497af8
jmp 0x429058
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x34]
call fcn.00449f42
jmp 0x429fec
mov dword [ebp - 4], 1
mov byte [ebp - 4], 0
mov byte [ebp - 4], 0x24
lea ecx, [ebp + 8]
call fcn.0044cee4
mov byte [ebp - 4], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x3f8], eax
push dword [ebp - 0x3f8]
call fcn.00498149
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x2c]
sub eax, 0x10
mov dword [ebp - 0x3fc], eax
mov ecx, dword [ebp - 0x3fc]
call fcn.0040110c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
leave
ret 0x2c