Function at 0x4a8a90
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x44c
mov ebx, dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_SetFileApisToOEM]
mov dword [ebp - 0x3b8], 0
mov dword [ebp - 0x3b4], 0
test ebx, ebx
mov dword [ebp - 0x3b0], 0
je 0x4a9ac5
lea ecx, [ebp - 0x310]
mov dword [esp], ebx
call fcn.00472800
lea eax, [ebp - 0x3b8]
sub esp, 4
mov dword [ebp - 0x418], eax
mov dword [esp + 4], eax
lea eax, [ebp - 0x310]
mov dword [esp], eax
call fcn.004acb70
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x4a8b0c
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3b4]
test eax, eax
jne 0x4a8bcf
mov ebx, dword [0x857a04]
test ebx, ebx
je 0x4aa2b3
mov eax, dword [ebx]
mov dword [esp + 8], 0x48
mov dword [esp + 4], 1
mov dword [esp], 0x7336bc
mov dword [esp + 0xc], eax
call fcn.005e7470
mov dword [esp], 0x733708
mov ecx, ebx
call fcn.006060c0
mov dword [ebp - 0x3f0], 0
sub esp, 4
mov esi, dword [ebp - 0x3b4]
mov eax, dword [ebp - 0x3b8]
test esi, esi
je 0x4a8bb5
lea edi, [esi*4 - 4]
lea esi, [esi]
mov ebx, dword [eax + edi]
sub esi, 1
test ebx, ebx
je 0x4a8bae
mov eax, dword [ebx]
test eax, eax
je 0x4a8b98
mov dword [esp], eax
call fcn.006eb310
mov dword [esp + 4], 0xc
mov dword [esp], ebx
call fcn.006eb350
mov eax, dword [ebp - 0x3b8]
sub edi, 4
test esi, esi
jne 0x4a8b80
test eax, eax
je 0x4a8bc1
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3f0]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebp - 0x3b8]
mov ebx, dword [edx]
test ebx, ebx
je 0x4a8c05
mov eax, dword [ebx]
test eax, eax
je 0x4a8be9
mov dword [esp], eax
call fcn.006eb310
mov dword [esp + 4], 0xc
mov dword [esp], ebx
call fcn.006eb350
mov edx, dword [ebp - 0x3b8]
mov eax, dword [ebp - 0x3b4]
lea eax, [eax*4 - 4]
mov dword [esp], edx
mov dword [esp + 8], eax
lea eax, [edx + 4]
mov dword [esp + 4], eax
call fcn.005e73f0
sub dword [ebp - 0x3b4], 1
je 0x4a8b1a
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 0x217], 0
mov byte [ebp - 0x216], 0
mov byte [ebp - 0x215], 0
mov byte [ebp - 0x211], 0
mov byte [ebp - 0x210], 0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x200], 0
mov dword [ebp - 0x1fc], 0
mov dword [ebp - 0x1f8], 0
call fcn.00472730
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x1d0], 0
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1bc], 0
call fcn.00472730
lea ecx, [ebp - 0x194]
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0
call fcn.00472730
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x188], 0
mov byte [ebp - 0x187], 0
mov byte [ebp - 0x185], 0
mov byte [ebp - 0x183], 0
mov byte [ebp - 0x181], 0
mov byte [ebp - 0x180], 0
mov byte [ebp - 0x17f], 0
mov byte [ebp - 0x186], 1
mov byte [ebp - 0x184], 1
mov byte [ebp - 0x182], 1
mov byte [ebp - 0x17e], 1
mov byte [ebp - 0x17c], 0
mov byte [ebp - 0x17b], 0
mov byte [ebp - 0x17a], 0
mov byte [ebp - 0x179], 0
mov byte [ebp - 0x178], 0
mov byte [ebp - 0x177], 0
mov byte [ebp - 0x176], 0
mov byte [ebp - 0x175], 0
mov byte [ebp - 0x170], 0
mov dword [ebp - 0x168], 0xffffffff
mov byte [ebp - 0x160], 0
mov byte [ebp - 0x15f], 0
mov byte [ebp - 0x15e], 0
mov byte [ebp - 0x15d], 0
mov byte [ebp - 0x15c], 0
mov byte [ebp - 0x158], 1
mov byte [ebp - 0x157], 1
mov byte [ebp - 0x156], 0
mov byte [ebp - 0x155], 0
mov byte [ebp - 0x154], 0
mov byte [ebp - 0x153], 0
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0
mov byte [ebp - 0x164], 1
mov byte [ebp - 0x163], 1
mov byte [ebp - 0x162], 1
mov byte [ebp - 0x161], 1
mov byte [ebp - 0x15a], 1
mov byte [ebp - 0x159], 1
mov byte [ebp - 0x15b], 1
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
mov byte [ebp - 0x12c], 1
call fcn.00472730
lea ecx, [ebp - 0x11c]
call fcn.00472730
lea ecx, [ebp - 0x110]
call fcn.00472730
lea ecx, [ebp - 0x104]
call fcn.00472730
lea ecx, [ebp - 0xf8]
call fcn.00472730
lea ecx, [ebp - 0xe8]
mov byte [ebp - 0xec], 0
call fcn.00472730
lea ecx, [ebp - 0xdc]
call fcn.00472730
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0xd0], 0
mov byte [ebp - 0xcc], 0
call fcn.00472730
lea ecx, [ebp - 0xb8]
mov byte [ebp - 0xbc], 0
mov byte [ebp - 0xbb], 0
call fcn.00472730
lea ecx, [ebp - 0xa8]
mov byte [ebp - 0xac], 0
mov byte [ebp - 0xab], 0
mov byte [ebp - 0xaa], 0
call fcn.00472730
lea ecx, [ebp - 0x9c]
call fcn.00472730
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x90], 0
call fcn.00472730
lea ebx, [ebp - 0x44]
mov byte [ebp - 0x80], 0
mov byte [ebp - 0x7f], 0
mov byte [ebp - 0x7e], 0
mov byte [ebp - 0x7d], 0
mov ecx, ebx
mov byte [ebp - 0x7c], 0
mov byte [ebp - 0x7b], 0
mov byte [ebp - 0x7a], 0
mov byte [ebp - 0x79], 0
mov byte [ebp - 0x78], 0
mov byte [ebp - 0x77], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x4c], 0
mov byte [ebp - 0x4b], 0
mov byte [ebp - 0x4a], 0
mov dword [ebp - 0x48], 0
call fcn.00472730
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x28], 2
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x20], 0
call fcn.004ace90
lea eax, [ebp - 0x218]
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x41c], eax
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x418]
mov dword [esp], eax
call fcn.004934c0
mov eax, dword [ebp - 0x2c]
sub esp, 8
cmp eax, 1
je 0x4a907a
cmp eax, 2
mov edx, 0
mov eax, 0x857a08
cmovne eax, edx
mov dword [0x857a04], eax
mov eax, dword [ebp - 0x28]
cmp eax, 2
je 0x4a9097
cmp eax, 1
mov edx, 0
mov eax, 0x857a10
cmovne eax, edx
mov dword [0x857a00], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x400], 0
test eax, eax
je 0x4a90be
cmp eax, 2
mov edx, 0x857a10
mov eax, 0x857a08
cmovne eax, edx
mov dword [ebp - 0x400], eax
movzx eax, byte [ebp - 0x218]
test al, al
mov byte [ebp - 0x411], al
je 0x4a9120
mov ebx, dword [0x857a04]
mov dword [ebp - 0x3f0], 0
test ebx, ebx
je 0x4a9105
mov ecx, ebx
mov dword [esp], 0x7336bc
call fcn.006060c0
sub esp, 4
mov ecx, ebx
mov dword [esp], 0x733708
call fcn.006060c0
sub esp, 4
lea ecx, [ebp - 0x370]
call fcn.004acf50
mov ecx, dword [ebp - 0x41c]
call fcn.00608810
jmp 0x4a8b65
mov dword [esp + 4], 1
mov dword [esp], 0x734114
call fcn.004b9cd0
mov dword [esp + 4], 1
mov dword [esp], 0x73413c
call fcn.004b9cd0
cmp byte [ebp - 0x20f], 0
jne 0x4aa2c8
mov eax, dword [ebp - 0x41c]
lea ecx, [ebp - 0x370]
mov dword [esp], eax
call fcn.00494ce0
mov esi, dword [ebp - 0x20]
sub esp, 4
mov dword [ebp - 0x420], 2
test esi, esi
je 0x4a9192
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x24], eax
setne al
movzx eax, al
add eax, 1
mov dword [ebp - 0x420], eax
mov ecx, dword [ebp - 0x400]
test ecx, ecx
je 0x4aa2ea
mov dword [esp], 0xfffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
lea edi, [ebp - 0x2d8]
sub esp, 4
mov dword [esp], eax
mov dword [esp + 4], edi
call dword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
sub esp, 8
test eax, eax
mov eax, 0x50
cmovne ax, word [ebp - 0x2d8]
cwde
mov dword [ebp - 0x410], eax
mov dword [esp], 0x18
call fcn.006eb380
mov ecx, eax
mov dword [eax], 0x75e0a8
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 4], 1
mov dword [ebp - 0x3e8], eax
movzx eax, byte [ebp - 0x216]
mov byte [ecx + 0x14], al
movzx eax, byte [ebp - 0x215]
mov byte [ecx + 0x15], al
call fcn.0046eec0
test eax, eax
mov dword [ebp - 0x3fc], eax
jne 0x4ab374
lea ecx, [ebp - 0x1f4]
call fcn.00493410
mov edi, dword [ebp - 0x3e8]
mov byte [ebp - 0x408], al
mov edx, dword [edi + 0xc]
test edx, edx
jne 0x4a927f
test al, al
jne 0x4a937c
cmp dword [ebp - 0x1f4], 6
je 0x4a937c
lea ecx, [ebp - 0x1f4]
call fcn.00493440
test al, al
jne 0x4a937c
lea eax, [ebp - 0x3ac]
mov dword [esp + 4], ebx
mov dword [ebp - 0x3ac], 0
mov dword [ebp - 0x3a8], 0
mov dword [ebp - 0x3a4], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x3e8]
mov dword [esp], eax
call fcn.004a02f0
test al, al
je 0x4ab379
lea eax, [ebp - 0x2d8]
mov dword [ebp - 0x3a0], 0
mov dword [ebp - 0x39c], 0
mov dword [ebp - 0x398], 0
mov dword [ebp - 0x3e0], 0
mov dword [ebp - 0x3f8], eax
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x4a9495
mov eax, dword [ebp - 0x3f8]
mov edi, dword [ebp - 0x3e0]
mov dword [ebp - 0x2d8], 0
mov ecx, dword [ebp - 0x3e8]
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x2d0], 0
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + edi*4]
mov dword [esp], eax
call fcn.0046ea00
sub esp, 8
test al, al
je 0x4a9352
cmp dword [ebp - 0x2d4], 1
je 0x4a93b0
mov dword [esp], 4
call fcn.006eb4a0
mov dword [eax], 0x734178
mov dword [esp + 8], 0
mov dword [esp + 4], 0x751968
mov dword [esp], eax
call fcn.006ebc00
mov dword [esp], 4
call fcn.006eb4a0
mov dword [eax], 0x7343ac
mov dword [esp + 8], 0
mov dword [esp + 4], 0x751968
mov dword [esp], eax
call fcn.006ebc00
lea esi, [esi]
lea edi, [edi]
mov eax, dword [ebp - 0x2d8]
mov edi, dword [ebp - 0x3a0]
xor ebx, ebx
mov dword [ebp - 0x3f0], eax
mov esi, dword [eax]
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0x3e4], eax
mov ecx, eax
cmp ebx, ecx
je 0x4a9420
lea edx, [ebx + ecx]
shr edx, 1
cmp esi, dword [edi + edx*4]
je 0x4a9976
jge 0x4a9a2d
mov eax, dword [ebp - 0x3e0]
mov ecx, eax
jmp 0x4a9416
lea eax, [ebx + edx]
shr eax, 1
cmp esi, dword [edi + eax*4]
je 0x4a9970
jge 0x4a9990
mov edx, eax
cmp ebx, edx
jne 0x4a9400
mov dword [ebp - 0x3e0], ecx
mov eax, dword [ebp - 0x3e4]
cmp eax, dword [ebp - 0x398]
je 0x4a99a0
mov edx, dword [ebp - 0x3e4]
lea eax, [ebx*4]
sub edx, ebx
shl edx, 2
mov dword [esp + 8], edx
lea edx, [edi + eax]
lea eax, [edi + eax + 4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e73f0
mov eax, dword [ebp - 0x3a0]
mov dword [eax + ebx*4], esi
mov eax, dword [ebp - 0x2d8]
add dword [ebp - 0x39c], 1
test eax, eax
mov dword [ebp - 0x3f0], eax
jne 0x4a997c
add dword [ebp - 0x3e0], 1
mov eax, dword [ebp - 0x3e0]
cmp eax, dword [ebp - 0x34]
jb 0x4a9300
mov eax, dword [ebp - 0x1f4]
cmp eax, 8
je 0x4a9ad2
cmp eax, 6
je 0x4a94b6
cmp byte [ebp - 0x408], 0
je 0x4abcd2
cmp byte [ebp - 0x211], 0
mov dword [ebp - 0x394], 0
mov dword [ebp - 0x390], 0
mov dword [ebp - 0x38c], 0
mov dword [ebp - 0x388], 0
mov dword [ebp - 0x384], 0
mov dword [ebp - 0x380], 0
jne 0x4a9a36
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x2d8], 0x75dc18
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0
mov dword [ebp - 0x2c0], 0xffffffff
mov dword [ebp - 0x2bc], 0xffffffff
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0
call fcn.00470e90
lea ecx, [ebp - 0x2a4]
call fcn.00472730
lea ecx, [ebp - 0x290]
mov dword [ebp - 0x298], 0xc8
mov dword [ebp - 0x294], 0
call fcn.00470e90
lea ecx, [ebp - 0x284]
call fcn.00470e90
lea ecx, [ebp - 0x278]
call fcn.00470e90
lea ecx, [ebp - 0x26c]
call fcn.00472730
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 0
mov dword [ebp - 0x258], 0xffffffff
mov dword [ebp - 0x254], 0xffffffff
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0
call fcn.00470e90
lea ecx, [ebp - 0x23c]
call fcn.00472730
lea ecx, [ebp - 0x230]
call fcn.00470e90
cmp byte [ebp - 0x20f], 0
mov byte [ebp - 0x220], 1
mov eax, dword [0x857a00]
je 0x4aad4e
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x400]
mov ecx, dword [0x857a04]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x2d4], ecx
sub eax, 1
test ecx, ecx
mov dword [ebp - 0x21c], eax
je 0x4a9659
mov dword [esp], 0x7341d0
call fcn.006060c0
sub esp, 4
mov dword [esp], eax
call fcn.00474070
lea edi, [ebp - 0x388]
lea eax, [ebp - 0x2d8]
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0
mov dword [ebp - 0x308], 0
lea ebx, [ebp - 0x2c8]
mov dword [ebp - 0x3e4], edi
lea edi, [ebp - 0x394]
mov ecx, eax
mov dword [ebp - 0x304], 0
mov dword [ebp - 0x300], 0
mov dword [ebp - 0x3e0], edi
mov dword [ebp - 0x2fc], 0
mov edi, eax
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x2ec], 0
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0
mov dword [ebp - 0x3f8], eax
call fcn.004d6be0
lea ecx, [ebp - 0x388]
lea eax, [ebp - 0x344]
mov dword [ebp - 0x3e4], ecx
lea ecx, [ebp - 0x394]
mov esi, eax
mov dword [ebp - 0x3e0], ecx
mov ecx, eax
call fcn.00472730
lea eax, [ebp - 0x310]
mov dword [esp + 0x18], edi
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x388]
mov dword [ebp - 0x3e4], eax
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x394]
mov dword [ebp - 0x3e0], eax
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x1d0]
mov dword [esp], eax
call fcn.00493840
mov esi, eax
mov eax, dword [ebp - 0x344]
test eax, eax
je 0x4a9787
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x224]
lea ebx, [ebp - 0x2c8]
test eax, eax
je 0x4a97a8
mov dword [esp], 1
mov ecx, ebx
call fcn.004ac170
sub esp, 4
test esi, esi
jne 0x4aae50
cmp byte [ebp - 0x20f], 0
jne 0x4ab438
mov ecx, ebx
mov dword [ebp - 0x2d8], 0x75dc18
call fcn.004abff0
cmp byte [ebp - 0x408], 0
mov dword [ebp - 0x3f0], 0
jne 0x4aa2f9
mov edi, dword [ebp - 0x384]
mov eax, dword [ebp - 0x388]
test edi, edi
je 0x4a9831
lea ebx, [edi*4 - 4]
mov esi, dword [eax + ebx]
sub edi, 1
test esi, esi
je 0x4a982a
mov eax, dword [esi]
test eax, eax
je 0x4a9814
mov dword [esp], eax
call fcn.006eb310
mov dword [esp + 4], 0xc
mov dword [esp], esi
call fcn.006eb350
mov eax, dword [ebp - 0x388]
sub ebx, 4
test edi, edi
jne 0x4a97fc
test eax, eax
je 0x4a983d
mov dword [esp], eax
call fcn.006eb310
mov edi, dword [ebp - 0x390]
mov eax, dword [ebp - 0x394]
test edi, edi
je 0x4a9889
lea ebx, [edi*4 - 4]
mov esi, dword [eax + ebx]
sub edi, 1
test esi, esi
je 0x4a9882
mov eax, dword [esi]
test eax, eax
je 0x4a986c
mov dword [esp], eax
call fcn.006eb310
mov dword [esp + 4], 0xc
mov dword [esp], esi
call fcn.006eb350
mov eax, dword [ebp - 0x394]
sub ebx, 4
test edi, edi
jne 0x4a9854
test eax, eax
je 0x4a9895
mov dword [esp], eax
call fcn.006eb310
cmp byte [ebp - 0x1e3], 0
je 0x4a98ec
mov ebx, dword [0x857a04]
test ebx, ebx
je 0x4a98ec
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call ebx
lea edx, [ebp - 0x388]
mov dword [esp], eax
mov dword [esp + 0x10], edx
lea edx, [ebp - 0x394]
mov dword [esp + 0xc], edx
lea edx, [ebp - 0x3c0]
mov dword [esp + 8], edx
lea edx, [ebp - 0x3c8]
mov dword [esp + 4], edx
call dword [sym.imp.KERNEL32.dll_GetProcessTimes]
sub esp, 0x14
test eax, eax
jne 0x4aaae0
mov edx, dword [ebp - 0x3fc]
test edx, edx
jne 0x4abd69
mov eax, dword [ebp - 0x3a0]
test eax, eax
je 0x4a990c
mov dword [esp], eax
call fcn.006eb310
mov ebx, dword [ebp - 0x3a8]
test ebx, ebx
je 0x4a9940
lea esi, [ebx*4 - 4]
mov eax, dword [ebp - 0x3ac]
mov dword [esp + 4], 0x20
sub ebx, 1
mov eax, dword [eax + esi]
sub esi, 4
mov dword [esp], eax
call fcn.006eb350
test ebx, ebx
jne 0x4a991d
mov eax, dword [ebp - 0x3ac]
test eax, eax
je 0x4a9952
mov dword [esp], eax
call fcn.006eb310
mov edi, dword [ebp - 0x3e8]
mov eax, dword [edi]
mov dword [esp], edi
call dword [eax + 8]
sub esp, 4
jmp 0x4a9105
mov dword [ebp - 0x3e0], ecx
mov eax, dword [ebp - 0x3f0]
mov dword [esp], eax
call fcn.006eb310
jmp 0x4a947f
mov dword [ebp - 0x3e0], ecx
lea ebx, [eax + 1]
mov ecx, edx
jmp 0x4a93d4
mov edi, eax
shr eax, 2
lea eax, [edi + eax + 1]
cmp eax, 0x1fffffff
mov dword [ebp - 0x3f0], eax
ja 0x4ab3b4
shl eax, 2
mov dword [esp], eax
call fcn.006eb360
mov edi, eax
mov eax, dword [ebp - 0x39c]
mov edx, dword [ebp - 0x3a0]
test eax, eax
mov dword [ebp - 0x3e4], eax
jne 0x4a9a0c
test edx, edx
je 0x4a99f5
mov dword [esp], edx
call fcn.006eb310
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0x3e4], eax
mov eax, dword [ebp - 0x3f0]
mov dword [ebp - 0x3a0], edi
mov dword [ebp - 0x398], eax
jmp 0x4a9432
shl eax, 2
mov dword [esp + 4], edx
mov dword [esp], edi
mov dword [esp + 8], eax
mov dword [ebp - 0x3e4], edx
call fcn.005e73f8
mov edx, dword [ebp - 0x3e4]
jmp 0x4a99e1
mov eax, edx
mov edx, ecx
jmp 0x4a9996
mov dword [esp], 0xc
call fcn.006eb380
mov esi, eax
lea eax, [ebp - 0x1b8]
mov ecx, esi
mov dword [esp], eax
call fcn.00472920
sub esp, 4
mov eax, dword [ebp - 0x390]
cmp eax, dword [ebp - 0x38c]
je 0x4aade7
mov edi, dword [ebp - 0x394]
mov dword [edi + eax*4], esi
add eax, 1
mov dword [esp], 0xc
mov dword [ebp - 0x390], eax
call fcn.006eb380
mov esi, eax
lea eax, [ebp - 0x1b8]
mov ecx, esi
mov dword [esp], eax
call fcn.00472920
sub esp, 4
mov eax, dword [ebp - 0x384]
cmp eax, dword [ebp - 0x380]
je 0x4aad7e
mov edi, dword [ebp - 0x388]
mov dword [edi + eax*4], esi
add eax, 1
mov dword [ebp - 0x384], eax
jmp 0x4a97ce
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov ebx, eax
jmp 0x4a8acb
mov edi, dword [0x857a04]
mov eax, 0x857a10
test edi, edi
cmove edi, eax
mov dword [esp], edi
call fcn.00474070
mov ecx, edi
mov dword [esp], 0x734191
call fcn.006060c0
sub esp, 4
mov dword [esp], eax
call fcn.00474070
mov eax, dword [ebp - 0x3e8]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4a9ec6
mov dword [ebp - 0x3f8], 0
nop
mov eax, dword [ebp - 0x3e8]
mov ecx, dword [ebp - 0x3f8]
mov eax, dword [eax + 8]
mov eax, dword [eax + ecx*4]
mov esi, eax
mov dword [ebp - 0x3e4], eax
mov eax, dword [edi]
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x7341a2
mov dword [esp + 0xc], eax
call fcn.005e7470
cmp byte [esi + 0x28], 1
mov edx, dword [edi]
mov dword [esp + 4], edx
sbb eax, eax
and eax, 0xffffffdd
add eax, 0x43
mov dword [esp], eax
call fcn.005e74b8
xor ebx, ebx
nop
lea esi, [esi]
mov eax, dword [ebp - 0x3e4]
mov edx, dword [eax]
mov eax, 0x20
bt edx, ebx
jae 0x4a9b99
movzx eax, byte [ebx + 0x7341a5]
mov edx, dword [edi]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005e74b8
add ebx, 1
cmp ebx, 0xc
jne 0x4a9b80
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e4]
mov ecx, edi
mov ebx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call fcn.004740b0
sub esp, 4
cmp ebx, 7
ja 0x4a9bfa
nop
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
add ebx, 1
cmp ebx, 8
jne 0x4a9be0
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
lea ecx, [ebp - 0x2d8]
call fcn.00472730
mov eax, dword [ebp - 0x3e4]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x4a9cdb
xor ebx, ebx
lea esi, [esi]
mov eax, dword [ebp - 0x3e4]
lea ecx, [ebp - 0x2d8]
mov eax, dword [eax + 0x18]
mov esi, dword [eax + ebx*4]
mov dword [esp], esi
call fcn.00472fc0
mov eax, dword [esi + 0x10]
sub esp, 4
test eax, eax
jne 0x4a9c73
mov eax, dword [ebp - 0x3e4]
add ebx, 1
cmp dword [eax + 0x1c], ebx
jbe 0x4a9cdb
test ebx, ebx
je 0x4a9c30
lea ecx, [ebp - 0x2d8]
call fcn.00472cd0
jmp 0x4a9c30
lea ecx, [ebp - 0x2d8]
mov dword [esp], 0x7341b2
call fcn.00473090
sub esp, 4
add esi, 0xc
lea ecx, [ebp - 0x2d8]
mov dword [esp], esi
call fcn.00472fc0
sub esp, 4
mov eax, dword [ebp - 0x2d4]
cmp dword [ebp - 0x2d0], eax
je 0x4a9e70
mov edx, dword [ebp - 0x2d8]
xor esi, esi
mov ecx, 0x29
add ebx, 1
mov word [edx + eax*2], cx
mov word [edx + eax*2 + 2], si
add eax, 1
mov dword [ebp - 0x2d4], eax
mov eax, dword [ebp - 0x3e4]
cmp dword [eax + 0x1c], ebx
ja 0x4a9c62
mov eax, dword [ebp - 0x2d8]
mov ecx, edi
mov ebx, dword [ebp - 0x2d4]
mov dword [esp], eax
call fcn.004740b0
sub esp, 4
cmp ebx, 0xc
ja 0x4a9d1a
lea esi, [esi]
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
add ebx, 1
cmp ebx, 0xd
jne 0x4a9d00
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e4]
mov ebx, dword [eax + 0x2c]
test ebx, ebx
jne 0x4aa250
mov esi, dword [eax + 0x34]
test esi, esi
je 0x4a9e90
mov dword [ebp - 0x3f0], 0
mov eax, dword [ebp - 0x3e4]
mov ecx, dword [ebp - 0x3f0]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + ecx*4]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x3e0], eax
test ecx, ecx
je 0x4a9e22
xor esi, esi
mov esi, esi
lea edi, [edi]
mov eax, dword [eax]
movzx ebx, byte [eax + esi]
lea eax, [ebx - 0x21]
cmp al, 0x5e
jbe 0x4a9e06
mov edx, ebx
shr dl, 4
lea ecx, [edx + 0x30]
lea eax, [edx + 0x37]
cmp dl, 9
mov edx, dword [edi]
cmovbe eax, ecx
movsx eax, al
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e74b8
and ebx, 0xf
lea edx, [ebx + 0x37]
lea eax, [ebx + 0x30]
cmp bl, 0xa
cmovae eax, edx
mov edx, dword [edi]
movsx eax, al
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
add esi, 1
cmp esi, dword [eax + 4]
jae 0x4a9e22
test esi, esi
je 0x4a9d80
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
mov eax, dword [eax]
movzx ebx, byte [eax + esi]
lea eax, [ebx - 0x21]
cmp al, 0x5e
ja 0x4a9d8d
mov eax, dword [edi]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
add esi, 1
cmp esi, dword [eax + 4]
jb 0x4a9ddd
mov ecx, dword [ebp - 0x3e4]
add dword [ebp - 0x3f0], 1
mov eax, dword [ebp - 0x3f0]
cmp eax, dword [ecx + 0x34]
jae 0x4a9e90
mov ebx, dword [ebp - 0x3f0]
test ebx, ebx
je 0x4a9d52
mov eax, dword [edi]
mov dword [esp + 8], 6
mov dword [esp + 4], 1
mov dword [esp], 0x7341bd
mov dword [esp + 0xc], eax
call fcn.005e7470
jmp 0x4a9d52
lea ecx, [ebp - 0x2d8]
call fcn.00472200
mov eax, dword [ebp - 0x2d4]
jmp 0x4a9cae
mov dword [esp], edi
call fcn.00474070
mov eax, dword [ebp - 0x2d8]
test eax, eax
je 0x4a9eaa
mov dword [esp], eax
call fcn.006eb310
mov ecx, dword [ebp - 0x3e8]
add dword [ebp - 0x3f8], 1
mov eax, dword [ebp - 0x3f8]
cmp dword [ecx + 0xc], eax
ja 0x4a9b20
mov dword [esp], edi
call fcn.00474070
mov ecx, edi
mov dword [esp], 0x73419a
call fcn.006060c0
sub esp, 4
mov dword [esp], eax
call fcn.00474070
mov eax, dword [0x857b80]
test eax, eax
je 0x4aa072
mov dword [ebp - 0x3e4], 0
mov eax, dword [ebp - 0x3e4]
lea esi, [ebp - 0x2d8]
mov eax, dword [eax*4 + 0x857a80]
mov dword [ebp - 0x3e0], eax
mov eax, dword [edi]
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x7341a2
mov dword [esp + 0xc], eax
call fcn.005e7470
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
mov eax, dword [eax + 0x14]
cmp eax, 1
je 0x4aa29c
mov dword [esp], eax
mov ecx, edi
call fcn.00474350
sub esp, 4
mov ebx, dword [ebp - 0x3e0]
mov edx, dword [edi]
cmp dword [ebx + 4], 1
mov dword [esp + 4], edx
sbb eax, eax
and eax, 0xffffffdb
add eax, 0x45
mov dword [esp], eax
call fcn.005e74b8
cmp dword [ebx], 1
mov edx, dword [edi]
mov dword [esp + 4], edx
sbb eax, eax
and eax, 0xffffffdc
add eax, 0x44
mov dword [esp], eax
call fcn.005e74b8
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 8], esi
xor ebx, ebx
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ade40
cmp byte [ebp - 0x2d8], 0
je 0x4aa000
mov eax, dword [ebp - 0x3e0]
add ebx, 1
cmp byte [esi + ebx], 0
jne 0x4a9fe2
cmp ebx, 7
mov dword [ebp - 0x3e0], eax
ja 0x4aa01a
lea esi, [esi]
lea edi, [edi]
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
add ebx, 1
cmp ebx, 8
jne 0x4aa000
mov eax, dword [edi]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.005e74b0
mov eax, dword [ebp - 0x3e0]
mov ebx, dword [eax + 0x10]
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [edi]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.005e74b0
mov dword [esp], edi
call fcn.00474070
add dword [ebp - 0x3e4], 1
mov eax, dword [ebp - 0x3e4]
cmp dword [0x857b80], eax
ja 0x4a9f0a
mov dword [esp], edi
call fcn.00474070
mov ecx, edi
mov dword [esp], 0x7341c4
call fcn.006060c0
sub esp, 4
mov dword [esp], eax
call fcn.00474070
mov edx, dword [0x857a60]
test edx, edx
je 0x4aa226
mov dword [ebp - 0x3e4], 0
mov eax, dword [ebp - 0x3e4]
lea esi, [ebp - 0x2d8]
mov eax, dword [eax*4 + 0x857a20]
mov dword [ebp - 0x3e0], eax
mov eax, dword [edi]
mov dword [esp + 8], 2
mov dword [esp + 4], 1
mov dword [esp], 0x7341a2
mov dword [esp + 0xc], eax
call fcn.005e7470
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 4], esi
xor ebx, ebx
mov eax, dword [eax + 0x14]
mov dword [esp], eax
call fcn.004ad740
cmp byte [ebp - 0x2d8], 0
je 0x4aa134
mov eax, dword [ebp - 0x3e0]
nop
add ebx, 1
cmp byte [esi + ebx], 0
jne 0x4aa120
cmp ebx, 3
mov dword [ebp - 0x3e0], eax
ja 0x4aa14e
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
add ebx, 1
cmp ebx, 4
jne 0x4aa134
mov eax, dword [edi]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.005e74b0
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 8], esi
xor ebx, ebx
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ade40
cmp byte [ebp - 0x2d8], 0
je 0x4aa1b4
mov eax, dword [ebp - 0x3e0]
nop
lea esi, [esi]
add ebx, 1
cmp byte [esi + ebx], 0
jne 0x4aa1a0
cmp ebx, 7
mov dword [ebp - 0x3e0], eax
ja 0x4aa1ce
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
add ebx, 1
cmp ebx, 8
jne 0x4aa1b4
mov eax, dword [edi]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.005e74b0
mov eax, dword [ebp - 0x3e0]
mov ebx, dword [eax + 0x10]
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [edi]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.005e74b0
mov dword [esp], edi
call fcn.00474070
add dword [ebp - 0x3e4], 1
mov eax, dword [ebp - 0x3e4]
cmp dword [0x857a60], eax
ja 0x4aa0b7
cmp byte [ebp - 0x1e3], 0
mov dword [ebp - 0x3f0], 0
je 0x4a98fa
mov eax, dword [0x857a04]
test eax, eax
jne 0x4a98a8
jmp 0x4a98fa
mov eax, dword [edi]
mov dword [esp + 8], 7
mov dword [esp + 4], 1
mov dword [esp], 0x7341b5
mov dword [esp + 0xc], eax
call fcn.005e7470
mov dword [esp], ebx
mov ecx, edi
call fcn.00474350
mov eax, dword [eax]
sub esp, 4
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
mov eax, dword [ebp - 0x3e4]
jmp 0x4a9d3d
mov eax, dword [edi]
mov dword [esp], 0x20
mov dword [esp + 4], eax
call fcn.005e74b8
jmp 0x4a9f6a
mov eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3f0], 0
jmp 0x4a8bb5
mov ecx, dword [0x857a04]
test ecx, ecx
je 0x4a9155
mov dword [esp], 0x7336bc
call fcn.006060c0
sub esp, 4
jmp 0x4a9155
mov dword [ebp - 0x410], 0x50
jmp 0x4a91dc
mov dword [esp], 0x168
call fcn.006eb380
mov ebx, eax
mov dword [eax], 0x75dbac
mov dword [eax + 4], 0x75df14
mov dword [eax + 8], 0x75dc64
lea ecx, [ebx + 0x28]
lea eax, [eax + 0x10]
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x18], 0xffffffff
mov dword [ebx + 0x1c], 0xffffffff
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x24], 0
mov dword [ebp - 0x424], eax
call fcn.00470e90
lea ecx, [ebx + 0x34]
call fcn.00472730
lea ecx, [ebx + 0x48]
mov dword [ebx + 0x40], 0xc8
mov dword [ebx + 0x44], 0
call fcn.00470e90
lea ecx, [ebx + 0x54]
call fcn.00470e90
lea ecx, [ebx + 0x60]
call fcn.00470e90
lea ecx, [ebx + 0x6c]
call fcn.00472730
lea ecx, [ebx + 0x90]
mov dword [ebx + 0x78], 0
mov dword [ebx + 0x7c], 0
mov dword [ebx + 0x80], 0xffffffff
mov dword [ebx + 0x84], 0xffffffff
mov dword [ebx + 0x88], 0
mov dword [ebx + 0x8c], 0
call fcn.00470e90
lea ecx, [ebx + 0x9c]
call fcn.00472730
lea ecx, [ebx + 0xa8]
call fcn.00470e90
lea ecx, [ebx + 0xe0]
mov byte [ebx + 0xb8], 1
mov dword [ebx + 0xbc], 0x4f
mov byte [ebx + 0xc8], 0
mov dword [ebx + 0xd0], 0
mov dword [ebx + 0xd4], 0
mov byte [ebx + 0xd8], 0
mov dword [ebx + 0xdc], 0
mov dword [ebx], str.k8_
mov dword [ebx + 4], 0x75ddfc
mov dword [ebx + 8], 0x75de14
call fcn.00470e90
lea ecx, [ebx + 0xec]
call fcn.00472730
lea ecx, [ebx + 0xf8]
call fcn.00472730
mov eax, dword [ebx]
mov byte [ebx + 0x158], 0
mov dword [ebx + 0x15c], 1
mov dword [ebx + 0x160], 0
mov eax, dword [eax + 4]
cmp eax, 0x609d90
jne 0x4abaef
add dword [ebx + 0xdc], 1
mov eax, dword [0x857a04]
cmp dword [ebp - 0x390], 1
mov edi, dword [ebp - 0x400]
mov dword [ebx + 0x108], 0
mov dword [ebx + 0x10c], 0
mov dword [ebx + 0xc0], eax
mov eax, dword [0x857a00]
seta byte [ebx + 0xd8]
test edi, edi
mov dword [ebx + 0xb4], edi
mov byte [ebx + 0x110], 0
mov byte [ebx + 0x111], 0
mov dword [ebx + 0x118], 0
mov dword [ebx + 0xc4], eax
mov eax, dword [ebp - 0x20]
mov dword [ebx + 0x11c], 0
mov dword [ebx + 0x120], 0
mov dword [ebx + 0x124], 0
mov dword [ebx + 0x128], 0
mov dword [ebx + 0x160], eax
mov eax, dword [ebp - 0x420]
mov dword [ebx + 0x12c], 0
mov dword [ebx + 0x130], 0
mov dword [ebx + 0x134], 0
mov dword [ebx + 0x138], 0
mov dword [ebx + 0x13c], 0
mov dword [ebx + 0x140], 0
mov dword [ebx + 0x144], 0
mov dword [ebx + 0x148], 0
mov dword [ebx + 0x14c], 0
mov dword [ebx + 0x150], 0
mov dword [ebx + 0x154], 0
mov dword [ebx + 0x15c], eax
je 0x4aa5a1
mov eax, dword [ebp - 0x410]
sub eax, 1
mov dword [ebx + 0xbc], eax
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x344], 0
mov dword [ebp - 0x340], 0
mov dword [ebp - 0x33c], 0
call fcn.00472730
movzx eax, word [ebp - 0x1a0]
lea ecx, [ebp - 0x338]
mov byte [ebp - 0x32c], 0
mov byte [ebp - 0x32b], 0
mov byte [ebp - 0x329], 0
mov byte [ebp - 0x327], 0
mov byte [ebp - 0x325], 0
mov byte [ebp - 0x324], 0
mov byte [ebp - 0x323], 0
mov word [ebp - 0x344], ax
movzx eax, byte [ebp - 0x19e]
mov byte [ebp - 0x32a], 1
mov byte [ebp - 0x328], 1
mov byte [ebp - 0x326], 1
mov byte [ebp - 0x322], 1
mov byte [ebp - 0x321], 0
mov byte [ebp - 0x320], 0
mov byte [ebp - 0x342], al
movzx eax, byte [ebp - 0x19d]
mov byte [ebp - 0x31f], 0
mov byte [ebp - 0x31e], 0
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0
mov dword [ebp - 0x314], 0
mov byte [ebp - 0x341], al
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x33c], eax
lea eax, [ebp - 0x194]
mov dword [esp], eax
call fcn.00472a90
mov eax, dword [ebp - 0x188]
sub esp, 4
cmp dword [ebp - 0x1f4], 3
mov esi, dword [ebp - 0x318]
mov dword [ebp - 0x32c], eax
mov eax, dword [ebp - 0x184]
sete byte [ebp - 0x31e]
test esi, esi
lea edi, [esi*4 - 4]
mov dword [ebp - 0x328], eax
movzx eax, word [ebp - 0x180]
mov word [ebp - 0x324], ax
movzx eax, byte [ebp - 0x17e]
mov byte [ebp - 0x322], al
movzx eax, byte [ebp - 0x211]
mov byte [ebp - 0x321], al
movzx eax, byte [ebp - 0x210]
mov byte [ebp - 0x320], al
movzx eax, byte [ebp - 0x20e]
mov byte [ebp - 0x31f], al
je 0x4aa777
mov eax, dword [ebp - 0x31c]
sub esi, 1
mov eax, dword [eax + edi]
test eax, eax
mov dword [ebp - 0x3e0], eax
je 0x4aa770
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4aa746
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3e0]
mov eax, dword [eax]
test eax, eax
je 0x4aa75a
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 4], 0x18
mov dword [esp], eax
call fcn.006eb350
sub edi, 4
test esi, esi
jne 0x4aa721
mov eax, dword [ebp - 0x1a8]
cmp eax, dword [ebp - 0x314]
mov dword [ebp - 0x318], 0
mov dword [ebp - 0x3e4], eax
jbe 0x4aa7df
cmp eax, 0x1fffffff
ja 0x4abac7
shl eax, 2
mov dword [esp], eax
call fcn.006eb360
mov esi, eax
mov eax, dword [ebp - 0x318]
mov edi, dword [ebp - 0x31c]
test eax, eax
jne 0x4abaaf
test edi, edi
je 0x4aa7cd
mov dword [esp], edi
call fcn.006eb310
mov eax, dword [ebp - 0x3e4]
mov dword [ebp - 0x31c], esi
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x3e4]
mov dword [ebp - 0x3e0], 0
test eax, eax
je 0x4aa85b
mov eax, dword [ebp - 0x1ac]
mov edi, dword [ebp - 0x3e0]
mov edi, dword [eax + edi*4]
mov dword [esp], 0x18
call fcn.006eb380
mov dword [esp], edi
mov ecx, eax
mov esi, eax
call fcn.00472920
sub esp, 4
add edi, 0xc
lea ecx, [esi + 0xc]
mov dword [esp], edi
call fcn.00472920
mov eax, dword [ebp - 0x318]
add dword [ebp - 0x3e0], 1
sub esp, 4
mov edi, dword [ebp - 0x3e0]
cmp dword [ebp - 0x3e4], edi
lea edx, [eax + 1]
mov dword [ebp - 0x318], edx
mov edx, dword [ebp - 0x31c]
mov dword [edx + eax*4], esi
jne 0x4aa7f3
lea esi, [ebp - 0x37c]
mov ecx, esi
call fcn.00472730
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x2d8], 0x75d4a8
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0
mov dword [ebp - 0x3f8], 0
test eax, eax
jne 0x4ab96f
lea eax, [ebp - 0x310]
mov dword [esp + 0x28], esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x2c], eax
mov eax, dword [ebp - 0x3f8]
mov dword [esp + 0x24], eax
lea eax, [ebx + 8]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x344]
mov dword [esp + 0x18], eax
mov dword [ebp - 0x400], eax
mov eax, dword [ebp - 0x20c]
mov eax, dword [eax]
add eax, 0xc
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x388]
mov dword [ebp - 0x3e4], eax
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x394]
mov dword [ebp - 0x3e0], eax
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x3a0]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3ac]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x3e8]
mov dword [esp], eax
call fcn.004cfcd0
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebx + 0xb4]
test eax, eax
je 0x4aa951
mov ecx, dword [ebp - 0x424]
mov dword [esp], 1
call fcn.004ac170
sub esp, 4
mov eax, dword [ebp - 0x378]
test eax, eax
je 0x4aa9bb
mov edi, dword [0x857a00]
test edi, edi
je 0x4aa9a3
mov dword [esp], edi
mov esi, dword [ebp - 0x37c]
call fcn.00474070
mov ecx, edi
mov dword [esp], 0x7341f1
call fcn.006060c0
sub esp, 4
mov edi, eax
mov dword [esp], eax
call fcn.00474070
mov dword [esp], esi
mov ecx, edi
call fcn.004740b0
sub esp, 4
mov dword [esp], eax
call fcn.00474070
mov edi, dword [ebp - 0x3fc]
mov eax, 0x80004005
mov ecx, eax
test edi, edi
cmovne ecx, edi
mov dword [ebp - 0x3fc], ecx
mov esi, dword [0x857a04]
test esi, esi
je 0x4aae76
mov dword [esp], esi
call fcn.00474070
mov eax, dword [ebx + 0x10c]
mov edi, dword [ebx + 0x108]
cmp eax, 0
mov dword [ebp - 0x3f0], eax
jbe 0x4aad40
mov ecx, esi
mov dword [esp], 0x7341f8
call fcn.006060c0
sub esp, 4
mov ecx, eax
mov dword [esp], edi
mov edi, dword [ebp - 0x3f0]
mov dword [esp + 4], edi
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov edx, dword [ebx + 0x11c]
mov eax, dword [ebx + 0x118]
mov ecx, esi
mov dword [esp], 0x734203
mov dword [ebp - 0x3ec], edx
mov dword [ebp - 0x3f0], eax
call fcn.006060c0
mov ecx, dword [ebp - 0x3ec]
mov edx, dword [ebp - 0x3f0]
sub esp, 4
mov dword [esp + 4], ecx
mov dword [esp], edx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov eax, dword [ebx + 0x120]
mov edi, dword [ebx + 0x124]
mov dword [ebp - 0x3f0], eax
or eax, edi
jne 0x4ab89c
mov eax, dword [ebx + 0x12c]
mov edi, dword [ebx + 0x128]
mov dword [ebp - 0x3f0], eax
or eax, edi
je 0x4aac85
test esi, esi
je 0x4ab7c3
mov ecx, esi
mov dword [esp], 0x734229
call fcn.006060c0
sub esp, 4
mov ecx, eax
mov dword [esp], edi
mov edi, dword [ebp - 0x3f0]
mov dword [esp + 4], edi
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
jmp 0x4aac9a
lea eax, [ebp - 0x37c]
lea edi, [ebp - 0x2d8]
mov dword [esp], eax
call fcn.004bb5c0
mov ecx, 0xa
xor eax, eax
mov dword [ebp - 0x3f8], edi
rep stosd dword es:[edi], eax
mov dword [ebp - 0x3d0], 0
mov dword [ebp - 0x3cc], 0
mov dword [esp], 0x7342fe
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
sub esp, 4
mov dword [ebp - 0x3e0], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esp + 4], 0x734318
mov dword [esp], eax
call edi
sub esp, 8
test eax, eax
mov esi, eax
je 0x4ab8eb
call ebx
mov ecx, dword [ebp - 0x3f8]
mov dword [esp + 8], 0x28
mov dword [esp], eax
mov dword [esp + 4], ecx
call esi
sub esp, 0xc
mov dword [ebp - 0x3e4], eax
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 4], 0x734359
mov dword [esp], eax
call edi
sub esp, 8
test eax, eax
mov esi, eax
je 0x4ab83a
call ebx
lea edx, [ebp - 0x3d0]
mov dword [esp], eax
mov dword [esp + 4], edx
call esi
mov esi, dword [ebp - 0x388]
mov edi, dword [ebp - 0x384]
sub esp, 8
mov edx, dword [ebp - 0x390]
mov ebx, eax
mov eax, dword [ebp - 0x394]
mov dword [ebp - 0x3e0], esi
mov esi, dword [ebp - 0x37c]
sub esi, dword [ebp - 0x3c8]
mov dword [ebp - 0x3dc], edi
mov ecx, edx
mov edi, dword [ebp - 0x378]
sbb edi, dword [ebp - 0x3c4]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], edx
mov edx, eax
mov eax, 0x73436f
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.004a86c0
test ebx, ebx
jne 0x4ab7d2
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x3dc]
mov eax, 0x734382
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.004a86c0
mov edx, dword [ebp - 0x3e0]
add edx, dword [ebp - 0x3f8]
mov eax, 0x73438a
mov ecx, dword [ebp - 0x3dc]
adc ecx, dword [ebp - 0x3f4]
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.004a86c0
mov ecx, dword [ebp - 0x3e4]
test ecx, ecx
jne 0x4ab785
mov dword [esp], esi
mov dword [esp + 4], edi
mov edx, esi
mov ecx, edi
mov eax, 0x73439b
call fcn.004a86c0
mov eax, dword [0x857a04]
mov dword [esp], eax
call fcn.00474070
jmp 0x4a98ec
test esi, esi
je 0x4aae9e
movzx eax, byte [ebp - 0x411]
mov byte [ebp - 0x408], al
mov eax, dword [ebx + 0x130]
mov edi, dword [ebx + 0x134]
mov dword [ebp - 0x3f0], eax
or eax, edi
jne 0x4ab750
mov eax, dword [ebx + 0x144]
or eax, dword [ebx + 0x140]
jne 0x4ab6f9
mov eax, dword [ebx + 0x13c]
or eax, dword [ebx + 0x138]
je 0x4aaebd
test esi, esi
je 0x4ab7c3
mov dword [esp], esi
call fcn.00474070
mov eax, dword [ebx + 0x138]
mov edi, dword [ebx + 0x13c]
mov dword [ebp - 0x3f0], eax
or eax, edi
je 0x4aad2e
mov ecx, esi
mov dword [esp], 0x734264
call fcn.006060c0
mov ecx, dword [ebp - 0x3f0]
sub esp, 4
mov dword [esp + 4], edi
mov dword [esp], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov dword [ebp - 0x3f0], 2
jmp 0x4aaed5
cmp edi, 1
jbe 0x4aaa6a
jmp 0x4aa9ec
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x400]
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x410]
sub eax, 1
mov dword [ebp - 0x21c], eax
jmp 0x4a9659
mov edx, eax
shr edx, 2
lea ebx, [eax + edx + 1]
cmp ebx, 0x1fffffff
ja 0x4ab6f4
lea eax, [ebx*4]
mov dword [esp], eax
call fcn.006eb360
mov edi, eax
mov eax, dword [ebp - 0x384]
mov ecx, dword [ebp - 0x388]
test eax, eax
mov dword [ebp - 0x3e0], ecx
jne 0x4ab6dc
test ecx, ecx
je 0x4aadd6
mov eax, dword [ebp - 0x3e0]
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x388], edi
mov dword [ebp - 0x380], ebx
jmp 0x4a9ab4
mov edx, eax
shr edx, 2
lea ebx, [eax + edx + 1]
cmp ebx, 0x1fffffff
ja 0x4ab6d7
lea eax, [ebx*4]
mov dword [esp], eax
call fcn.006eb360
mov edi, eax
mov eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x394]
test eax, eax
mov dword [ebp - 0x3e0], ecx
jne 0x4ab6bf
test ecx, ecx
je 0x4aae3f
mov eax, dword [ebp - 0x3e0]
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x390]
mov dword [ebp - 0x394], edi
mov dword [ebp - 0x38c], ebx
jmp 0x4a9a6f
mov ecx, ebx
mov dword [ebp - 0x2d8], 0x75dc18
call fcn.004abff0
mov dword [ebp - 0x3fc], esi
mov dword [ebp - 0x3f0], 0
jmp 0x4a97e5
mov eax, dword [ebx + 0x124]
movzx edi, byte [ebp - 0x408]
or eax, dword [ebx + 0x120]
movzx eax, byte [ebp - 0x411]
cmovne eax, edi
mov byte [ebp - 0x411], al
jmp 0x4aaa84
mov eax, dword [ebx + 0x13c]
or eax, dword [ebx + 0x138]
jne 0x4ab7c3
movzx eax, byte [ebp - 0x411]
mov byte [ebp - 0x408], al
xor eax, eax
cmp byte [ebp - 0x408], 0
setne al
add eax, eax
test esi, esi
mov dword [ebp - 0x3f0], eax
je 0x4aaf07
mov eax, dword [ebx + 0x12c]
or eax, dword [ebx + 0x128]
jne 0x4ab0c0
mov eax, dword [ebx + 0x14c]
or eax, dword [ebx + 0x148]
jne 0x4ab0c0
mov eax, dword [ebp - 0x3fc]
test eax, eax
je 0x4ab468
mov esi, dword [ebp - 0x2d0]
mov dword [ebp - 0x2d8], 0x75d4a8
mov eax, dword [ebp - 0x2d4]
test esi, esi
je 0x4aaf81
lea edi, [esi*4 - 4]
mov ecx, dword [eax + edi]
sub esi, 1
test ecx, ecx
mov dword [ebp - 0x3e0], ecx
je 0x4aaf7a
mov eax, dword [ecx + 4]
test eax, eax
je 0x4aaf47
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3e0]
mov eax, dword [eax]
test eax, eax
je 0x4aaf5e
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
sub esp, 4
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 4], 0x114
mov dword [esp], eax
call fcn.006eb350
mov eax, dword [ebp - 0x2d4]
sub edi, 4
test esi, esi
jne 0x4aaf28
test eax, eax
je 0x4aaf8d
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x37c]
test eax, eax
je 0x4aaf9f
mov dword [esp], eax
call fcn.006eb310
mov esi, dword [ebp - 0x318]
mov eax, dword [ebp - 0x31c]
test esi, esi
je 0x4ab00c
lea edi, [esi*4 - 4]
mov ecx, dword [eax + edi]
sub esi, 1
test ecx, ecx
mov dword [ebp - 0x3e0], ecx
je 0x4ab005
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x4aafd5
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3e0]
mov eax, dword [eax]
test eax, eax
je 0x4aafe9
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 4], 0x18
mov dword [esp], eax
call fcn.006eb350
mov eax, dword [ebp - 0x31c]
sub edi, 4
test esi, esi
jne 0x4aafb6
test eax, eax
je 0x4ab018
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebp - 0x338]
test eax, eax
je 0x4ab02a
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebx]
mov eax, dword [eax + 8]
cmp eax, 0x609db0
jne 0x4ab45b
sub dword [ebx + 0xdc], 1
jne 0x4a97e5
mov eax, dword [ebx + 0xf8]
mov dword [ebx], str.k8_
mov dword [ebx + 4], 0x75ddfc
mov dword [ebx + 8], 0x75de14
test eax, eax
je 0x4ab06d
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebx + 0xec]
test eax, eax
je 0x4ab07f
mov dword [esp], eax
call fcn.006eb310
mov eax, dword [ebx + 0xe0]
test eax, eax
je 0x4ab091
mov dword [esp], eax
call fcn.006eb310
mov ecx, dword [ebp - 0x424]
mov dword [ebx + 8], 0x75dc64
call fcn.004abff0
mov dword [esp + 4], 0x168
mov dword [esp], ebx
call fcn.006eb350
jmp 0x4a97e5
mov dword [esp], esi
call fcn.00474070
mov eax, dword [ebx + 0x14c]
mov edi, dword [ebx + 0x148]
mov dword [ebp - 0x3e0], eax
or eax, edi
je 0x4aaf07
mov ecx, esi
mov dword [esp], 0x734272
call fcn.006060c0
sub esp, 4
mov ecx, eax
mov dword [esp], edi
mov edi, dword [ebp - 0x3e0]
mov dword [esp + 4], edi
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
jmp 0x4aaf07
mov eax, dword [ebp - 0x3a0]
test eax, eax
je 0x4ab146
mov dword [esp], eax
call fcn.006eb310
lea ecx, [ebp - 0x3ac]
call fcn.006057f0
mov edi, dword [ebp - 0x3e8]
mov eax, dword [edi]
mov dword [esp], edi
call dword [eax + 8]
sub esp, 4
lea ecx, [ebp - 0x370]
call fcn.004acf50
mov ecx, dword [ebp - 0x41c]
call fcn.00608810
mov ecx, dword [ebp - 0x418]
call fcn.00604ff0
mov dword [esp], ebx
call fcn.005d7530
mov ebx, eax
jmp 0x4ab151
mov ecx, dword [ebp - 0x3e4]
call fcn.00604ff0
mov ecx, dword [ebp - 0x3e0]
call fcn.00604ff0
jmp 0x4ab134
call fcn.006ee360
mov dword [esp], 4
call fcn.006eb4a0
mov dword [eax], 0x734178
mov dword [esp + 8], 0
mov dword [esp + 4], 0x751968
mov dword [esp], eax
call fcn.006ebc00
cmp edx, 0xffffffff
mov dword [esp], eax
jne 0x4ab186
call fcn.006eb630
call fcn.006ebc70
mov ebx, eax
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x4ab178
mov dword [esp], eax
call fcn.006eb310
jmp 0x4ab178
lea eax, [ebp - 0x310]
mov ecx, dword [ebp - 0x3f8]
mov dword [esp], eax
call fcn.004d7620
sub esp, 4
jmp 0x4a97bd
mov dword [esp], ebx
call eax
sub esp, 4
jmp 0x4a97e5
mov eax, dword [ebp - 0x2f0]
mov edi, dword [ebp - 0x2ec]
mov dword [ebp - 0x408], eax
or eax, edi
jne 0x4ab634
mov eax, dword [ebp - 0x2e4]
mov edi, dword [ebp - 0x2e8]
mov ecx, eax
mov dword [ebp - 0x408], eax
mov eax, edi
xor eax, 1
mov edx, eax
or edx, ecx
je 0x4ab699
mov ecx, esi
mov dword [esp], 0x73428f
call fcn.006060c0
sub esp, 4
mov ecx, eax
mov dword [esp], edi
mov edi, dword [ebp - 0x408]
mov dword [esp + 4], edi
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov eax, dword [ebp - 0x2e0]
mov edi, dword [ebp - 0x2dc]
mov dword [ebp - 0x408], eax
or eax, edi
je 0x4ab569
mov ecx, esi
mov dword [esp], 0x734297
call fcn.006060c0
mov ecx, dword [ebp - 0x408]
sub esp, 4
mov dword [esp + 4], edi
mov dword [esp], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov edx, dword [ebp - 0x2fc]
mov eax, dword [ebp - 0x300]
mov ecx, esi
mov dword [esp], 0x7342ab
mov dword [ebp - 0x404], edx
mov dword [ebp - 0x408], eax
call fcn.006060c0
mov ecx, dword [ebp - 0x404]
mov edx, dword [ebp - 0x408]
sub esp, 4
mov dword [esp + 4], ecx
mov dword [esp], edx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov eax, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x2f4]
mov ecx, esi
mov dword [esp], 0x7342c4
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], edx
mov eax, dword [ebp - 0x308]
mov edx, dword [ebp - 0x304]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], edx
call fcn.006060c0
mov edx, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x40c]
sub esp, 4
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov edi, eax
mov dword [esp], eax
call fcn.00474070
mov ecx, edi
mov dword [esp], 0x7342d1
call fcn.006060c0
mov edx, dword [ebp - 0x408]
mov ecx, dword [ebp - 0x404]
sub esp, 4
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov edi, dword [ebp - 0x3f8]
test edi, edi
je 0x4aaf07
mov dword [esp], esi
call fcn.00474070
lea eax, [ebp - 0x2d8]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.004d9400
jmp 0x4aaf07
mov ecx, esi
mov dword [esp], 0x734285
call fcn.006060c0
mov ecx, dword [ebp - 0x408]
sub esp, 4
mov dword [esp + 4], edi
mov dword [esp], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov eax, dword [ebp - 0x2e4]
mov edi, dword [ebp - 0x2e8]
mov ecx, eax
mov dword [ebp - 0x408], eax
mov eax, edi
xor eax, 1
mov edx, eax
or edx, ecx
jne 0x4ab4a5
mov eax, dword [ebp - 0x2ec]
or eax, dword [ebp - 0x2f0]
jne 0x4ab4a5
mov eax, dword [ebp - 0x2dc]
or eax, dword [ebp - 0x2e0]
je 0x4ab569
mov edi, 1
mov dword [ebp - 0x408], 0
jmp 0x4ab4a5
shl eax, 2
mov dword [esp + 4], ecx
mov dword [esp], edi
mov dword [esp + 8], eax
call fcn.005e73f8
jmp 0x4aae2b
call fcn.006ebc70
shl eax, 2
mov dword [esp + 4], ecx
mov dword [esp], edi
mov dword [esp + 8], eax
call fcn.005e73f8
jmp 0x4aadc2
call fcn.006ebc70
mov dword [esp], esi
call fcn.00474070
mov eax, dword [ebx + 0x140]
mov edi, dword [ebx + 0x144]
mov dword [ebp - 0x3f0], eax
or eax, edi
je 0x4aacc6
mov ecx, esi
mov dword [esp], 0x734259
call fcn.006060c0
mov ecx, dword [ebp - 0x3f0]
sub esp, 4
mov dword [esp + 4], edi
mov dword [esp], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
jmp 0x4aacc6
mov ecx, esi
mov dword [esp], 0x734240
call fcn.006060c0
mov ecx, dword [ebp - 0x3f0]
sub esp, 4
mov dword [esp + 4], edi
mov dword [esp], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
jmp 0x4aacb4
mov edx, dword [ebp - 0x2b4]
xor ecx, ecx
mov eax, 0x734392
call fcn.004a8520
mov edx, esi
mov ecx, edi
mov dword [esp], esi
mov dword [esp + 4], edi
mov eax, 0x73439b
call fcn.004a86c0
mov edx, dword [ebp - 0x2d0]
xor ecx, ecx
mov eax, 0x7343a3
call fcn.004a8520
jmp 0x4aac73
mov dword [ebp - 0x3f0], 2
jmp 0x4aaf07
mov ecx, dword [0x857a04]
mov dword [esp], 0x734377
call fcn.006060c0
mov eax, dword [ebp - 0x3d0]
mov edx, dword [ebp - 0x3cc]
sub esp, 4
mov dword [esp + 8], 0xf4240
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call int.005d5030
mov dword [esp], 0x20
mov ecx, 0x16
call fcn.004a8480
mov ecx, dword [0x857a04]
mov dword [esp], 0x734379
call fcn.006060c0
sub esp, 4
jmp 0x4aac0a
mov esi, dword [ebp - 0x37c]
sub esi, dword [ebp - 0x3c8]
mov edi, dword [ebp - 0x378]
sbb edi, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x394]
mov edx, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x388]
mov ebx, dword [ebp - 0x384]
mov dword [esp], esi
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], edx
mov dword [ebp - 0x3e0], ecx
mov dword [esp + 4], edi
mov ecx, edx
mov edx, eax
mov eax, 0x73436f
mov dword [ebp - 0x3dc], ebx
call fcn.004a86c0
jmp 0x4aac0a
mov ecx, esi
mov dword [esp], 0x734211
call fcn.006060c0
mov ecx, dword [ebp - 0x3f0]
sub esp, 4
mov dword [esp + 4], edi
mov dword [esp], ecx
mov ecx, eax
call fcn.004743a0
sub esp, 8
mov dword [esp], eax
call fcn.00474070
mov eax, dword [ebx + 0x12c]
mov edi, dword [ebx + 0x128]
mov dword [ebp - 0x3f0], eax
or eax, edi
jne 0x4aaaa6
jmp 0x4aac9a
mov dword [esp], 0x734330
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
sub esp, 4
test eax, eax
je 0x4ab913
mov dword [esp + 4], 0x734344
mov dword [esp], eax
call edi
sub esp, 8
test eax, eax
jne 0x4ab968
mov dword [ebp - 0x3e4], 0
jmp 0x4aab6f
mov ecx, dword [ebp - 0x400]
call fcn.00606f90
mov eax, dword [ebx]
mov dword [esp], ebx
mov ebx, esi
call dword [eax + 8]
sub esp, 4
jmp 0x4ab1a9
mov esi, eax
jmp 0x4aab4d
lea eax, [ebp - 0x2d8]
mov ecx, eax
mov dword [ebp - 0x3f8], eax
lea eax, [ebp - 0x1e0]
mov dword [esp], eax
lea eax, [ebp - 0x344]
mov dword [ebp - 0x400], eax
lea eax, [ebp - 0x388]
mov dword [ebp - 0x3e4], eax
lea eax, [ebp - 0x394]
mov dword [ebp - 0x3e0], eax
call fcn.004d28c0
sub esp, 4
test eax, eax
jne 0x4aba82
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 0
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0
jmp 0x4aa8a8
mov dword [esp], esi
mov dword [esp + 4], 0x18
mov esi, edi
call fcn.006eb350
lea eax, [ebp - 0x344]
mov dword [ebp - 0x400], eax
lea eax, [ebp - 0x388]
mov dword [ebp - 0x3e4], eax
lea eax, [ebp - 0x394]
mov dword [ebp - 0x3e0], eax
jmp 0x4ab94b
lea edi, [ebp - 0x344]
mov dword [ebp - 0x400], edi
lea edi, [ebp - 0x388]
mov dword [ebp - 0x3e4], edi
lea edi, [ebp - 0x394]
mov dword [ebp - 0x3e0], edi
call fcn.006ee360
mov edi, eax
jmp 0x4aba47
shl eax, 2
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.005e73f8
jmp 0x4aa7c5
call fcn.006ebc70
mov esi, eax
jmp 0x4aba59
mov dword [esp], ebx
call eax
sub esp, 4
jmp 0x4aa487
mov ebx, dword [0x857a00]
test ebx, ebx
je 0x4abd0e
mov dword [esp], ebx
call fcn.00474070
mov ecx, ebx
mov dword [esp], 0x7342de
call fcn.006060c0
sub esp, 4
mov ecx, eax
mov dword [esp], 0x7342e6
call fcn.006060c0
sub esp, 4
mov dword [esp], eax
call fcn.00474070
mov dword [esp], 4
call fcn.006eb4a0
mov dword [eax], 7
mov dword [esp + 8], 0
mov dword [esp + 4], 0x751164
mov dword [esp], eax
call fcn.006ebc00
mov dword [esp + 4], 0xc
mov dword [esp], esi
mov ebx, eax
call fcn.006eb350
lea eax, [ebp - 0x388]
mov dword [ebp - 0x3e4], eax
lea eax, [ebp - 0x394]
mov dword [ebp - 0x3e0], eax
jmp 0x4ab1a9
mov eax, dword [ebp - 0x3fc]
call fcn.006ee360
mov ebx, eax
jmp 0x4ab134