Function at 0x42af1b
Capabilities:
Accept command line arguments
Check if file exists
Get file attributes

Disassembly:
push 0x1b8
mov eax, 0x435146
call fcn.00431949
mov edi, ecx
mov dword [ebp - 0x15c], edi
xor ebx, ebx
mov dword [ebp - 0x1b0], edi
mov dword [ebp - 0x1ac], ebx
sub esp, 0x18
mov dword [ebp - 4], ebx
mov ecx, esp
mov dword [ebp - 0x1a0], esp
push 0x40d60c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 1
mov ecx, esp
push 0x40d380
call fcn.0041314d
push 0x63
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], bl
call fcn.00412723
mov dword [ebp - 0x160], ebx
mov dword [ebp - 0x18c], ebx
mov dword [ebp - 0x188], ebx
mov dword [ebp - 0x184], ebx
mov dword [ebp - 0x180], ebx
mov dword [ebp - 0x17c], ebx
mov dword [ebp - 0x178], ebx
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0xf8], ebx
mov word [ebp - 0x108], ax
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0xe0], ebx
mov word [ebp - 0xf0], ax
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x94], ebx
mov word [ebp - 0xa4], ax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x110], ebx
mov word [ebp - 0x120], ax
push 0x18
mov byte [ebp - 4], 9
mov esi, ebx
pop ecx
mov dword [ebp - 0x174], ebx
mov dword [ebp - 0x1a4], ebx
mov dword [ebp - 0x164], ebx
mov dword [ebp - 0x1a0], ecx
mov dword [ebp - 0x1a8], 2
mov eax, dword [ebp + 0xc]
sub eax, dword [ebp + 8]
cdq
idiv ecx
cmp esi, eax
jae 0x42b8c3
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x158], esp
push 0x40d64c
call fcn.0041314d
imul esi, esi, 0x18
sub esp, 0x18
mov byte [ebp - 4], 0xa
mov ecx, esp
mov eax, dword [ebp + 8]
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b09c
push 0x40d650
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov byte [edi + 0x58], 1
jmp 0x42ce5d
mov dword [ebp - 0x154], esp
push 0x40d694
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0xb
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b0f3
push 0x40d6a0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov byte [edi + 0x59], bl
jmp 0x42ce5d
mov dword [ebp - 0x154], esp
push 0x40d6ec
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0xc
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b14e
push 0x40d6f8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x160], 2
jmp 0x42ce5d
mov dword [ebp - 0x154], esp
push 0x40d750
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
test al, al
je 0x42b1ac
sub esp, 0x18
mov ecx, esp
push 0x40d758
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x160], 0x2000000
jmp 0x42ce5d
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40d7a4
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0xe
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d68d
test al, al
je 0x42b21d
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x42b1f2
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40d7a8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
or dword [ebp - 0x160], 0x20
jmp 0x42ce5d
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40d820
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0xf
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d68d
test al, al
je 0x42b287
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x42b263
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40d828
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
jmp 0x42ce5d
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40d86c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x10
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b2ea
push 0x40d878
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x160], 0x20000
jmp 0x42ce5d
mov dword [ebp - 0x154], esp
push 0x40d8dc
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x11
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b348
push 0x40d8e8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x160], 0x40000
jmp 0x42ce5d
mov dword [ebp - 0x154], esp
push 0x40d93c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x12
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b3a6
push 0x40d948
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov dword [ebp - 0x160], 0x1d
jmp 0x42ce5d
mov dword [ebp - 0x154], esp
push 0x40d9d8
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x13
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 9
call fcn.0042d454
test al, al
je 0x42b404
sub esp, 0x18
mov ecx, esp
push 0x40d9e0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x160], 0x1000000
jmp 0x42ce5d
xor eax, eax
mov dword [ebp - 0x48], 7
mov dword [ebp - 0x4c], ebx
mov word [ebp - 0x5c], ax
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x14
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40da40
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x14
call fcn.0042d68d
test al, al
je 0x42b491
cmp dword [ebp - 0x48], 8
mov eax, dword [ebp - 0x5c]
jae 0x42b45e
lea eax, [ebp - 0x5c]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40da48
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
lea eax, [ebp - 0x5c]
lea ecx, [ebp - 0x18c]
push eax
call fcn.00421b7d
jmp 0x42ce4e
xor eax, eax
mov dword [ebp - 0x78], 7
mov dword [ebp - 0x7c], ebx
mov word [ebp - 0x8c], ax
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x16
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40da9c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x17
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d68d
test al, al
je 0x42b52d
cmp dword [ebp - 0x78], 8
mov eax, dword [ebp - 0x8c]
jae 0x42b4f7
lea eax, [ebp - 0x8c]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40daa8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
lea eax, [ebp - 0x8c]
lea ecx, [ebp - 0x180]
push eax
call fcn.00421b7d
jmp 0x42ce40
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40db18
call fcn.0041314d
push 0x18
pop eax
mov byte [ebp - 4], al
sub esp, 0x18
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
test al, al
je 0x42b58c
sub esp, 0x18
mov ecx, esp
push 0x40db24
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov byte [edi + 0x5a], 1
jmp 0x42ce40
lea eax, [ebp - 0xf0]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40db58
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x19
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d68d
test al, al
je 0x42b602
cmp dword [ebp - 0xdc], 8
mov eax, dword [ebp - 0xf0]
jae 0x42b5de
lea eax, [ebp - 0xf0]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40db68
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
jmp 0x42ce40
lea eax, [ebp - 0xa4]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40dbb4
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d68d
test al, al
je 0x42b6a5
cmp dword [ebp - 0x90], 8
mov eax, dword [ebp - 0xa4]
jae 0x42b654
lea eax, [ebp - 0xa4]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40dbc0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
mov eax, dword [ebp - 0xa4]
add esp, 0x20
cmp dword [ebp - 0x90], 8
jae 0x42b688
lea eax, [ebp - 0xa4]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x42d3f4
test al, 0x10
jne 0x42d3f4
jmp 0x42ce40
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40dd04
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b705
push 0x40dd14
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov byte [0x43a7c0], 1
jmp 0x42ce40
mov dword [ebp - 0x154], esp
push 0x40dd48
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b760
push 0x40dd58
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x174], 1
jmp 0x42ce40
mov dword [ebp - 0x154], esp
push 0x40dd98
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b7bb
push 0x40dda0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x174], 2
jmp 0x42ce40
mov dword [ebp - 0x154], esp
push 0x40ddd4
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b816
push 0x40ddf0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x174], 4
jmp 0x42ce40
mov dword [ebp - 0x154], esp
push 0x40de3c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42b871
push 0x40de50
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x174], 8
jmp 0x42ce40
mov dword [ebp - 0x154], esp
push 0x40de94
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x20
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
test al, al
je 0x42b93e
push ebx
push 1
lea ecx, [ebp - 0x8c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 9
call fcn.00413b40
call fcn.0042da51
push ebx
push 1
lea ecx, [ebp - 0x120]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0xa4]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0xf0]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x108]
call fcn.00413b40
lea ecx, [ebp - 0x180]
call fcn.00414a29
lea ecx, [ebp - 0x18c]
call fcn.00414a29
lea ecx, [ebp - 0xd8]
call fcn.004127db
lea ecx, [ebp + 8]
call fcn.00414a29
xor eax, eax
call fcn.0043189b
ret 0xc
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40de98
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x21
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x16
call fcn.0042d454
test al, al
je 0x42b9e2
sub esp, 0x18
mov ecx, esp
push 0x40dea0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
push ebx
sub esp, 0x18
mov ecx, esp
push 0x404df4
call fcn.0041314d
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
sub esp, 0x10
mov edi, esp
mov esi, 0x4024b8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041b847
push ebx
push 1
lea ecx, [ebp - 0x8c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x5c]
call fcn.00413b40
jmp 0x42b8c8
xor eax, eax
mov dword [ebp - 0x60], 7
mov dword [ebp - 0x64], ebx
mov word [ebp - 0x74], ax
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 0x22
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40dee4
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x23
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42baaf
sub esp, 0x18
mov ecx, esp
push 0x40def0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041b847
push ebx
push 1
lea ecx, [ebp - 0x74]
call fcn.00413b40
jmp 0x42b9c4
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40df30
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x24
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42bb5d
push 0x40df34
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041bc6d
jmp 0x42ba9f
mov dword [ebp - 0x154], esp
push 0x40df6c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x25
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d454
test al, al
je 0x42bc39
sub esp, 0x18
mov ecx, esp
push 0x40df78
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x34], ebx
mov byte [ebp - 0x44], bl
mov edx, 0x40dfc0
mov byte [ebp - 4], 0x26
call fcn.0042dbc5
lea edx, [ebp - 0x44]
mov ecx, 0x43a350
call fcn.0042dd9e
cmp dword [ebp - 0x34], 1
jne 0x42bc29
cmp dword [ebp - 0x30], 0x10
mov eax, dword [ebp - 0x44]
mov ecx, eax
jae 0x42bbec
lea ecx, [ebp - 0x44]
cmp byte [ecx], 0x59
je 0x42bbff
cmp dword [ebp - 0x30], 0x10
jae 0x42bbfa
lea eax, [ebp - 0x44]
cmp byte [eax], 0x79
jne 0x42bc29
mov edx, 0x40e008
call fcn.0042dbc5
push ebx
sub esp, 0x18
mov ecx, esp
push 0x404df4
call fcn.0041314d
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.0041c503
push ebx
push 1
lea ecx, [ebp - 0x44]
call fcn.004120db
jmp 0x42ba9f
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e00c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x27
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42bce7
sub esp, 0x18
mov ecx, esp
push 0x40e018
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041ca88
jmp 0x42ba9f
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e060
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x28
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42bd95
push 0x40e068
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041d393
jmp 0x42ba9f
mov dword [ebp - 0x154], esp
push 0x40e0a8
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x29
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42be1f
push 0x40e0b0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov ecx, edi
push dword [ebp - 0x160]
call fcn.0042daef
push ebx
sub esp, 0x18
mov esi, eax
mov ecx, esp
push 0x404df4
call fcn.0041314d
push esi
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00421bed
push ebx
mov ecx, edi
call fcn.00422db3
jmp 0x42ba9f
mov dword [ebp - 0x154], esp
push 0x40e0f0
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x2a
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42bea3
push 0x40e0f8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov ecx, edi
push dword [ebp - 0x160]
call fcn.0042daef
push ebx
sub esp, 0x18
mov esi, eax
mov ecx, esp
push 0x404df4
call fcn.0041314d
push esi
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00421bed
push 1
jmp 0x42be13
mov dword [ebp - 0x154], esp
push 0x40e148
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x2b
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42bf25
push 0x40e150
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov ecx, edi
push dword [ebp - 0x160]
call fcn.0042daef
push ebx
sub esp, 0x18
mov esi, eax
mov ecx, esp
push 0x404df4
call fcn.0041314d
push esi
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00421da7
jmp 0x42ba9f
mov dword [ebp - 0x154], esp
push 0x40e19c
call fcn.0041314d
push 0x2c
pop eax
mov byte [ebp - 4], al
sub esp, 0x18
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d454
test al, al
je 0x42bfb7
sub esp, 0x18
mov ecx, esp
push 0x40e1a4
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov ecx, edi
push dword [ebp - 0x160]
call fcn.0042daef
push ebx
sub esp, 0x18
mov esi, eax
mov ecx, esp
push 0x404df4
call fcn.0041314d
push esi
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00421bed
mov ecx, edi
call fcn.00422295
mov ecx, edi
call fcn.00422e5c
jmp 0x42ba9f
lea eax, [ebp - 0x108]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e1e0
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42c054
cmp dword [ebp - 0xf4], 8
mov eax, dword [ebp - 0x108]
jae 0x42c009
lea eax, [ebp - 0x108]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40e1e8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
push ebx
sub esp, 0x18
mov ecx, esp
push 0x404df4
call fcn.0041314d
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
lea eax, [ebp - 0x108]
mov ecx, edi
push eax
call fcn.0041ccde
jmp 0x42ba9f
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e248
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x2e
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42c102
sub esp, 0x18
mov ecx, esp
push 0x40e258
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041e25a
jmp 0x42ba9f
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e288
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x2f
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42c1b2
sub esp, 0x18
mov ecx, esp
push 0x40e290
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov ecx, dword [ebp - 0x15c]
push ebx
push ebx
sub esp, 0x10
lea esi, [ebp - 0x19c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041e7bf
jmp 0x42ba9f
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e2d0
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x30
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42c384
sub esp, 0x18
mov ecx, esp
push 0x40e2d8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov eax, dword [ebp - 0x15c]
cmp byte [eax + 0x5a], 0
jne 0x42c264
cmp dword [ebp - 0x94], 0
ja 0x42c264
push ebx
push 1
mov ecx, eax
jmp 0x42c199
mov dword [ebp - 0x170], ebx
mov dword [ebp - 0x16c], ebx
mov dword [ebp - 0x168], ebx
lea eax, [ebp - 0x170]
mov byte [ebp - 4], 0x31
push eax
push 1
sub esp, 0x10
lea esi, [ebp - 0x19c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x15c]
mov ecx, esi
call fcn.0041e7bf
cmp dword [ebp - 0x94], 0
jbe 0x42c2be
sub esp, 0x18
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.0042ed9b
cmp byte [esi + 0x5a], 0
je 0x42c2eb
sub esp, 0x18
mov ecx, esp
push 0x40e330
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
call dword [sym.imp.msvcrt.dll_getchar]
mov byte [esi + 0x5a], bl
movzx eax, byte [ebp - 0x18d]
push eax
movzx eax, byte [ebp - 0x18e]
push eax
movzx eax, byte [ebp - 0x18f]
push eax
movzx eax, byte [ebp - 0x190]
push eax
movzx eax, byte [ebp - 0x191]
push eax
movzx eax, byte [ebp - 0x192]
push eax
movzx eax, byte [ebp - 0x193]
push eax
movzx eax, byte [ebp - 0x194]
push eax
movzx eax, word [ebp - 0x196]
push eax
movzx eax, word [ebp - 0x198]
push eax
push dword [ebp - 0x19c]
sub esp, 0x18
mov ecx, esp
push 0x407a08
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x3c
lea eax, [ebp - 0x170]
mov ecx, esp
push eax
call fcn.0041637a
mov ecx, esi
call fcn.0041f8c1
lea ecx, [ebp - 0x170]
call fcn.00414a29
jmp 0x42ba9f
lea eax, [ebp - 0x74]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e390
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x32
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x22
call fcn.0042d68d
test al, al
je 0x42c438
sub esp, 0x18
mov ecx, esp
push 0x40e398
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
push dword [ebp - 0x174]
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041ec3c
jmp 0x42ba9f
push ebx
push ebx
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], ebx
mov dword [ebp - 0x124], ebx
call fcn.00413b40
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x33
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e40c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x34
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42c5ac
sub esp, 0x18
mov ecx, esp
push 0x40e414
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
push 0x2c
pop eax
add esp, 4
movzx esi, ax
lea eax, [ebp - 0x138]
mov ecx, esp
push eax
call fcn.00412eff
mov edx, esi
lea ecx, [ebp - 0x170]
call fcn.0042ea31
mov byte [ebp - 4], 0x35
mov eax, dword [ebp - 0x16c]
sub eax, dword [ebp - 0x170]
push 0x18
pop ecx
sub eax, 0x30
sub esp, 0x18
cmp eax, ecx
mov ecx, esp
jb 0x42c527
push 0x40e458
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov dword [ebp - 0x1b8], 0x80070057
lea eax, [ebp - 0x1b8]
push 0x4394e4
jmp 0x42d44d
push dword [ebp - 0x170]
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
push 0x404df4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov eax, dword [ebp - 0x170]
sub esp, 0x18
add eax, 0x18
mov ecx, esp
push eax
call fcn.00412eff
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041ab42
lea ecx, [ebp - 0x170]
call fcn.00414a29
push ebx
push 1
lea ecx, [ebp - 0x138]
call fcn.00413b40
jmp 0x42ba9f
lea eax, [ebp - 0x138]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e500
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x36
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42c798
sub esp, 0x18
mov ecx, esp
push 0x40e414
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
push 0x2c
pop eax
add esp, 4
movzx esi, ax
lea eax, [ebp - 0x138]
mov ecx, esp
push eax
call fcn.00412eff
mov edx, esi
lea ecx, [ebp - 0x170]
call fcn.0042ea31
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x16c]
sub ecx, dword [ebp - 0x170]
push 0x18
pop edx
lea eax, [ecx - 0x30]
cmp eax, edx
jb 0x42c685
lea eax, [ecx - 0x48]
cmp eax, edx
jb 0x42c685
sub esp, 0x18
mov ecx, esp
push 0x40e508
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov dword [ebp - 0x1bc], 0x80070057
lea eax, [ebp - 0x1bc]
push 0x4394e4
jmp 0x42d44d
sub esp, 0x18
mov ecx, esp
push dword [ebp - 0x170]
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
lea edi, [ebp - 0x19c]
push ebx
sub esp, 0x18
mov ecx, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, 0x404df4
push esi
call fcn.0041314d
mov ecx, dword [ebp - 0x15c]
push 0xffffffffffffffff
call fcn.00413c34
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x170]
sub eax, ecx
push 0x18
sub eax, 0x48
pop edx
cmp eax, edx
jae 0x42c6fc
lea eax, [ecx + 0x30]
push eax
lea ecx, [ebp - 0x150]
call fcn.00412eff
xor ecx, ecx
inc ecx
mov dword [ebp - 0x1a8], ecx
mov dword [ebp - 0x1ac], ecx
jmp 0x42c70f
push esi
lea ecx, [ebp - 0x44]
call fcn.0041314d
mov dword [ebp - 0x1ac], 2
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push eax
call fcn.00412ed8
sub esp, 0x18
mov dword [ebp - 4], 0x3a
mov eax, dword [ebp - 0x170]
mov ecx, esp
add eax, 0x18
push eax
call fcn.00412eff
mov ecx, dword [ebp - 0x15c]
lea esi, [ebp - 0x19c]
sub esp, 0x10
mov byte [ebp - 4], 0x39
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0041b374
mov eax, dword [ebp - 0x1a8]
test al, 2
je 0x42c77d
push ebx
and eax, 0xfffffffd
lea ecx, [ebp - 0x44]
push 1
mov dword [ebp - 0x1a8], eax
call fcn.00413b40
mov eax, dword [ebp - 0x1a8]
test al, 1
je 0x42c58e
push ebx
push 1
lea ecx, [ebp - 0x150]
call fcn.00413b40
jmp 0x42c58e
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e5e0
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42c8cb
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x42c7e2
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40e5e8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
pop ecx
lea eax, [ebp - 0x2c]
mov ecx, esp
push eax
call fcn.00412eff
lea ecx, [ebp - 0x44]
call fcn.0042e6df
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x30], 8
mov eax, dword [ebp - 0x44]
jae 0x42c823
lea eax, [ebp - 0x44]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e648
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x3d
mov ecx, esp
mov dword [ebp - 0x158], esp
push 0x40d60c
call fcn.0041314d
push 0x294
sub esp, 0x18
mov byte [ebp - 4], 0x3e
mov ecx, esp
push 0x40d380
call fcn.0041314d
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x3c
push eax
call fcn.004125b8
add esp, 0x54
lea eax, [ebp - 0x44]
push ebx
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00412eff
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00415dcd
cmp dword [ebp - 0x94], 0
jbe 0x42c8bb
sub esp, 0x18
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.0042ed9b
push ebx
push 1
lea ecx, [ebp - 0x44]
call fcn.00413b40
jmp 0x42c599
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e670
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x3f
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42caa0
sub esp, 0x18
mov ecx, esp
push 0x40e674
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x2c]
mov ecx, esp
push eax
call fcn.00412eff
lea ecx, [ebp - 0x44]
call fcn.0042e6df
mov byte [ebp - 4], 0x40
cmp dword [ebp - 0x30], 8
mov eax, dword [ebp - 0x44]
jae 0x42c948
lea eax, [ebp - 0x44]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e648
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x41
mov ecx, esp
mov dword [ebp - 0x158], esp
push 0x40d60c
call fcn.0041314d
push 0x2ac
sub esp, 0x18
mov byte [ebp - 4], 0x42
mov ecx, esp
push 0x40d380
call fcn.0041314d
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x40
push eax
call fcn.004125b8
add esp, 0x54
lea eax, [ebp - 0x44]
push 1
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00412eff
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00421bed
mov ecx, edi
call fcn.00422295
mov ecx, edi
call fcn.00422e5c
mov ecx, edi
call fcn.004227bb
sub esp, 0xc
lea eax, [ebp - 0x180]
mov ecx, esp
mov dword [ebp - 0x154], esp
push eax
call fcn.0041637a
sub esp, 0xc
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0x18c]
mov ecx, esp
push eax
call fcn.0041637a
mov ecx, edi
mov byte [ebp - 4], 0x40
call fcn.0042868c
mov ecx, edi
call fcn.004232c2
mov ecx, edi
mov byte [ebp - 4], 0x44
call fcn.0042a668
cmp dword [ebp - 0x94], 0
jbe 0x42ca3f
sub esp, 0x18
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.0042ed9b
push 1
mov ecx, edi
mov dword [ebp - 4], 0x40
call fcn.0042a2c3
mov ecx, edi
call fcn.00423463
mov ecx, edi
call fcn.0042a668
sub esp, 0x18
mov ecx, esp
push 0x40e6ac
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
jmp 0x42c8bb
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e6cc
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x46
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42cbf2
sub esp, 0x18
mov ecx, esp
push 0x40e6d8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
lea eax, [ebp - 0x2c]
mov ecx, esp
push eax
call fcn.00412eff
lea ecx, [ebp - 0x44]
call fcn.0042e6df
mov byte [ebp - 4], 0x47
cmp dword [ebp - 0x30], 8
mov eax, dword [ebp - 0x44]
jae 0x42cb1d
lea eax, [ebp - 0x44]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e648
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x48
mov ecx, esp
mov dword [ebp - 0x158], esp
push 0x40d60c
call fcn.0041314d
push 0x2ee
sub esp, 0x18
mov byte [ebp - 4], 0x49
mov ecx, esp
push 0x40d380
call fcn.0041314d
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x47
push eax
call fcn.004125b8
add esp, 0x54
lea eax, [ebp - 0x44]
push 1
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00412eff
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
mov ecx, edi
call fcn.00421bed
mov ecx, edi
call fcn.00422295
mov ecx, edi
call fcn.00422e5c
mov ecx, edi
call fcn.004227bb
sub esp, 0xc
lea eax, [ebp - 0x180]
mov ecx, esp
mov dword [ebp - 0x154], esp
push eax
call fcn.0041637a
sub esp, 0xc
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0x18c]
mov ecx, esp
push eax
call fcn.0041637a
mov ecx, edi
mov byte [ebp - 4], 0x47
call fcn.0042868c
sub esp, 0x18
mov ecx, esp
push 0x40e724
jmp 0x42ca67
lea eax, [ebp - 0x120]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e758
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x4b
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42cd6e
push 0x2c
pop eax
sub esp, 0x18
movzx esi, ax
lea eax, [ebp - 0x120]
mov ecx, esp
push eax
call fcn.00412eff
mov edx, esi
lea ecx, [ebp - 0x170]
call fcn.0042ea31
sub esp, 0x18
mov byte [ebp - 4], 0x4c
mov ecx, esp
push dword [ebp - 0x170]
call fcn.00412eff
call fcn.00419fb3
mov esi, eax
mov dword [ebp - 0x34], ebx
lea edi, [ebp - 0x19c]
mov dword [ebp - 0x30], ebx
push ebx
push ebx
movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x44]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00413b40
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x16c]
mov edx, dword [ebp - 0x170]
sub ecx, edx
push 0x18
pop esi
lea eax, [ecx - 0x18]
cmp eax, esi
jae 0x42ccc8
sub esp, 0x18
mov ecx, esp
push 0x40e770
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
jmp 0x42cd0f
lea eax, [ecx - 0x30]
cmp eax, esi
jae 0x42cd54
lea eax, [edx + 0x18]
cmp dword [eax + 0x14], 8
jb 0x42ccde
mov eax, dword [eax]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40e818
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
mov eax, dword [ebp - 0x170]
lea ecx, [ebp - 0x44]
add esp, 0x20
add eax, 0x18
push eax
call fcn.00418e56
sub esp, 0x18
lea eax, [ebp - 0x44]
mov ecx, esp
push eax
call fcn.00412eff
sub esp, 0x10
lea esi, [ebp - 0x19c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x15c]
mov ecx, edi
call fcn.0041ef6e
push ebx
push 1
lea ecx, [ebp - 0x44]
call fcn.00413b40
lea ecx, [ebp - 0x170]
call fcn.00414a29
jmp 0x42ce27
mov dword [ebp - 0x1c0], 0x80070057
lea eax, [ebp - 0x1c0]
push 0x4394e4
jmp 0x42d44d
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e884
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x4e
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d454
sub esp, 0x18
mov ecx, esp
test al, al
je 0x42cdce
push 0x40e898
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x1a4], 0x100
jmp 0x42ce27
mov dword [ebp - 0x154], esp
push 0x40e92c
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x4f
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d454
test al, al
je 0x42ce72
sub esp, 0x18
mov ecx, esp
push 0x40e948
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
or dword [ebp - 0x1a4], 0x200
push ebx
push 1
lea ecx, [ebp - 0x138]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x74]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x8c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 9
call fcn.00413b40
mov esi, dword [ebp - 0x164]
inc esi
push 0x18
mov dword [ebp - 0x164], esi
pop ecx
jmp 0x42b02b
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40e9e4
call fcn.0041314d
imul esi, dword [ebp - 0x164], 0x18
sub esp, 0x18
mov byte [ebp - 4], 0x50
mov ecx, esp
mov eax, dword [ebp + 8]
add eax, esi
push eax
call fcn.00412eff
mov byte [ebp - 4], 0x33
call fcn.0042d68d
test al, al
je 0x42cf83
push ebx
push ebx
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
call fcn.00413b40
mov byte [ebp - 4], 0x51
cmp dword [ebp - 0x1c], 0
je 0x42cf69
mov esi, dword [ebp - 0x1a4]
sub esp, 0x18
mov ecx, esp
test esi, 0x100
je 0x42ceef
push 0x40e9f8
jmp 0x42cef4
push 0x40ea78
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
lea eax, [ebp - 0x2c]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00412eff
lea ecx, [ebp - 0x150]
call fcn.0042e6df
push eax
lea ecx, [ebp - 0x44]
call fcn.00418e76
push ebx
push 1
lea ecx, [ebp - 0x150]
call fcn.00413b40
push 1
sub esp, 0x18
lea eax, [ebp - 0x44]
mov ecx, esp
push eax
call fcn.00412eff
push 0xffffffffffffffff
mov ecx, edi
call fcn.00413c34
push esi
mov ecx, edi
call fcn.0041f064
push ebx
push 1
lea ecx, [ebp - 0x44]
call fcn.00413b40
jmp 0x42d2a5
mov dword [ebp - 0x1c4], 0x80070057
lea eax, [ebp - 0x1c4]
push 0x4394e4
jmp 0x42d44d
mov eax, dword [ebp + 8]
sub esp, 0x18
add eax, esi
mov ecx, esp
push eax
call fcn.00412eff
call fcn.0042e494
test al, al
jne 0x42cfe8
mov ecx, dword [ebp + 8]
add ecx, esi
cmp dword [ecx + 0x14], 8
jb 0x42cfa9
mov ecx, dword [ecx]
call fcn.0041d6c0
test al, al
jne 0x42cfe8
mov eax, dword [ebp + 8]
add eax, esi
cmp dword [eax + 0x14], 8
jb 0x42cfbf
mov eax, dword [eax]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40ed40
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x20
call fcn.0042da51
jmp 0x42d3cc
sub esp, 0x18
mov ecx, esp
push 0x40eaf8
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
mov eax, dword [ebp + 8]
add esp, 0x1c
add eax, esi
cmp dword [eax + 0x14], 8
jb 0x42d013
mov eax, dword [eax]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x154], esp
push 0x40eb40
call fcn.0041314d
sub esp, 0x18
mov byte [ebp - 4], 0x52
mov ecx, esp
mov dword [ebp - 0x158], esp
push 0x40d60c
call fcn.0041314d
push 0x34d
sub esp, 0x18
mov byte [ebp - 4], 0x53
mov ecx, esp
push 0x40d380
call fcn.0041314d
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x33
push eax
call fcn.004125b8
mov dword [ebp - 0x170], ebx
mov dword [ebp - 0x16c], ebx
mov dword [ebp - 0x168], ebx
add esp, 0x3c
mov byte [ebp - 4], 0x54
mov eax, dword [ebp + 8]
mov ecx, esp
add eax, esi
push eax
call fcn.00412eff
mov dl, 1
lea ecx, [ebp - 0x150]
call fcn.0041d70c
push eax
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x55
call fcn.00420ccb
push ebx
push 1
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x54
call fcn.00413b40
mov eax, dword [ebp + 0xc]
sub eax, dword [ebp + 8]
push 0x18
cdq
pop esi
idiv esi
mov ecx, dword [ebp - 0x164]
inc ecx
mov dword [ebp - 0x164], ecx
cmp ecx, eax
jae 0x42d17c
imul esi, ecx, 0x18
mov eax, dword [ebp + 8]
sub esp, 0x18
add eax, esi
mov ecx, esp
push eax
call fcn.00412eff
call fcn.0042e494
test al, al
jne 0x42d116
mov ecx, dword [ebp + 8]
add ecx, esi
cmp dword [ecx + 0x14], 8
jb 0x42d109
mov ecx, dword [ecx]
call fcn.0041d6c0
test al, al
je 0x42d34c
mov eax, dword [ebp + 8]
sub esp, 0x18
add eax, esi
mov ecx, esp
push eax
call fcn.00412eff
mov dl, 1
lea ecx, [ebp - 0x150]
call fcn.0041d70c
push eax
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x56
call fcn.00420ccb
push ebx
push 1
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x54
call fcn.00413b40
push 0x18
pop eax
add esi, eax
mov ecx, dword [ebp - 0x164]
mov eax, dword [ebp + 0xc]
inc ecx
sub eax, dword [ebp + 8]
cdq
idiv dword [ebp - 0x1a0]
mov dword [ebp - 0x164], ecx
cmp ecx, eax
jb 0x42d0e3
push dword [ebp - 0x160]
mov ecx, edi
call fcn.0042daef
push ebx
sub esp, 0x18
mov dword [ebp - 0x164], eax
mov ecx, esp
push 0x404df4
call fcn.0041314d
mov esi, dword [ebp - 0x164]
mov ecx, edi
push esi
call fcn.00413c34
sub esp, 0xc
lea eax, [ebp - 0x180]
mov ecx, esp
mov dword [ebp - 0x154], esp
push eax
call fcn.0041637a
sub esp, 0xc
mov byte [ebp - 4], 0x57
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x158], esp
mov ecx, esp
push eax
call fcn.0041637a
sub esp, 0x18
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x1a0], esp
mov ecx, esp
push eax
call fcn.00412eff
sub esp, 0xc
mov byte [ebp - 4], 0x59
lea eax, [ebp - 0x170]
mov ecx, esp
push eax
call fcn.0041637a
mov ecx, edi
mov byte [ebp - 4], 0x54
call fcn.00414aa0
test esi, 0x1000000
jne 0x42d27c
mov byte [ebp - 4], 0x5a
cmp dword [ebp - 0xe0], 0
jbe 0x42d244
sub esp, 0x18
lea eax, [ebp - 0xf0]
mov ecx, esp
push eax
call fcn.00412eff
mov ecx, edi
call fcn.004158a9
cmp dword [ebp - 0x94], 0
jbe 0x42d263
sub esp, 0x18
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.00412eff
call fcn.0042ed9b
test byte [ebp - 0x164], 0x10
mov dword [ebp - 4], 0x54
jne 0x42d27c
push 1
mov ecx, edi
call fcn.004153f1
sub esp, 0x18
mov ecx, esp
push 0x40ed0c
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
lea ecx, [ebp - 0x170]
call fcn.00414a29
mov esi, ebx
push ebx
push 1
lea ecx, [ebp - 0x138]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x74]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x8c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x5c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x120]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0xa4]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0xf0]
call fcn.00413b40
push ebx
push 1
lea ecx, [ebp - 0x108]
call fcn.00413b40
lea ecx, [ebp - 0x180]
call fcn.00414a29
lea ecx, [ebp - 0x18c]
call fcn.00414a29
lea ecx, [ebp - 0xd8]
call fcn.004127db
lea ecx, [ebp + 8]
call fcn.00414a29
mov eax, esi
jmp 0x42b936
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40ebdc
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
imul eax, dword [ebp - 0x164], 0x18
add esp, 0x20
add eax, dword [ebp + 8]
cmp dword [eax + 0x14], 8
jb 0x42d383
mov eax, dword [eax]
push eax
sub esp, 0x18
mov ecx, esp
push 0x40ec18
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
pop ecx
mov ecx, esp
push 0x40ece0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
call fcn.0042da51
lea ecx, [ebp - 0x170]
call fcn.00414a29
xor esi, esi
inc esi
jmp 0x42d2a7
lea ecx, [ebp - 0xa4]
call fcn.00413833
push eax
sub esp, 0x18
mov ecx, esp
push 0x40dc38
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
pop ecx
pop ecx
mov ecx, esp
push 0x40dca0
call fcn.0041314d
lea eax, [ebp - 0xd8]
push eax
call fcn.004124a5
add esp, 0x1c
mov dword [ebp - 0x1b4], 0x80070057
lea eax, [ebp - 0x1b4]
push 0x4394e4
push eax
call sub.msvcrt.dll__CxxThrowException
int3