Function at 0x46f29c
Capabilities:
Print debug messages
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x525ddd
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x6f8
push esi
mov dword [ebp - 0x6f4], ecx
mov dword [ebp - 0x3e0], 0
mov dword [ebp - 0x684], 5
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + 0x105c]
mov dword [ebp - 0x674], ecx
mov edx, dword [ebp - 0x674]
shl edx, 9
mov dword [ebp - 0x680], edx
mov dword [ebp - 0x468], 0x1e
lea ecx, [ebp - 0x2d0]
call fcn.0050ef40
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x6f4]
mov edx, dword [ecx + eax*4 + 0x3f50]
add edx, 0x10
mov dword [ebp - 0x68c], edx
push 0x104
push 0
lea eax, [ebp - 0x3dc]
push eax
call fcn.004e9480
add esp, 0xc
push str.Copy_Compare
lea ecx, [ebp - 0x3dc]
push ecx
call fcn.004e96e0
add esp, 8
push 0
push 0xf
push 0x80ffff
push 0x56e7e0
push 0
lea edx, [ebp - 0x3dc]
push edx
push 6
push 1
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x6f4]
call fcn.00463ad1
mov dword [ebp - 0x698], 0
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov eax, dword [edx + ecx + 0x1afa]
xor ecx, ecx
mov cl, byte [eax + 0x63]
shl ecx, 0x18
mov edx, dword [ebp - 0x698]
add edx, ecx
mov dword [ebp - 0x698], edx
mov eax, dword [ebp + 8]
imul eax, eax, 0x245
mov ecx, dword [ebp - 0x6f4]
mov edx, dword [ecx + eax + 0x1afa]
xor eax, eax
mov al, byte [edx + 0x62]
shl eax, 0x10
mov ecx, dword [ebp - 0x698]
add ecx, eax
mov dword [ebp - 0x698], ecx
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + edx + 0x1afa]
xor edx, edx
mov dl, byte [ecx + 0x61]
shl edx, 8
mov eax, dword [ebp - 0x698]
add eax, edx
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov eax, dword [edx + ecx + 0x1afa]
xor ecx, ecx
mov cl, byte [eax + 0x60]
mov edx, dword [ebp - 0x698]
add edx, ecx
mov dword [ebp - 0x698], edx
mov eax, dword [ebp - 0x6f4]
cmp dword [eax + 0x1048], 0
jne 0x46f48e
mov ecx, dword [ebp - 0x698]
xor esi, esi
mov edx, dword [ebp - 0x6f4]
mov eax, dword [edx + 0x104c]
cdq
push edx
push eax
push esi
push ecx
call fcn.004ea8f0
mov dword [ebp - 0x2d8], eax
mov dword [ebp - 0x2d4], edx
push 0
push 0x64
mov eax, dword [ebp - 0x2d4]
push eax
mov ecx, dword [ebp - 0x2d8]
push ecx
call fcn.004ea880
mov dword [ebp - 0x2a4], eax
jmp 0x46f4ee
mov edx, dword [ebp - 0x6f4]
mov eax, dword [edx + 0x1050]
cdq
push 0
push 0xa
push edx
push eax
call fcn.004ea8f0
push 0
push 0x400
push edx
push eax
call fcn.004ea8f0
push 0
push 0x400
push edx
push eax
call fcn.004ea8f0
mov dword [ebp - 0x2d8], eax
mov dword [ebp - 0x2d4], edx
push 0
push 0x200
mov eax, dword [ebp - 0x2d4]
push eax
mov ecx, dword [ebp - 0x2d8]
push ecx
call fcn.004ea880
mov dword [ebp - 0x2a4], eax
mov dword [ebp - 0x29c], 0
mov edx, dword [ebp - 0x680]
push edx
call fcn.004e9f6e
add esp, 4
mov dword [ebp - 0x678], eax
mov eax, dword [ebp - 0x680]
push eax
call fcn.004e9f6e
add esp, 4
mov dword [ebp - 0x690], eax
cmp dword [ebp - 0x678], 0
je 0x46f534
cmp dword [ebp - 0x690], 0
jne 0x46f572
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb1
mov dword [ebp - 0x6b0], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6b0]
jmp 0x470e7e
mov eax, dword [ebp - 0x680]
push eax
push 0
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9480
add esp, 0xc
mov edx, dword [ebp - 0x680]
push edx
push 0
mov eax, dword [ebp - 0x690]
push eax
call fcn.004e9480
add esp, 0xc
push 0x80
push 0
lea ecx, [ebp - 0x298]
push ecx
call fcn.004e9480
add esp, 0xc
mov dword [ebp - 0x2a8], 0
jmp 0x46f5d3
mov edx, dword [ebp - 0x2a8]
add edx, 1
mov dword [ebp - 0x2a8], edx
mov ecx, dword [ebp - 0x6f4]
add ecx, 0x10a0
call fcn.00404710
push eax
call fcn.004ea2e0
add esp, 4
cmp dword [ebp - 0x2a8], eax
jge 0x470dcd
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp - 0x2c0], 0
mov eax, dword [ebp - 0x680]
push eax
push 0
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9480
add esp, 0xc
mov edx, dword [ebp - 0x2a8]
push edx
mov ecx, dword [ebp - 0x6f4]
add ecx, 0x10a0
call fcn.0047eac0
movsx eax, al
mov dword [ebp - 0x6f8], eax
mov ecx, dword [ebp - 0x6f8]
sub ecx, 0x30
mov dword [ebp - 0x6f8], ecx
cmp dword [ebp - 0x6f8], 0x12
ja case.0x46f671.2
mov eax, dword [ebp - 0x6f8]
xor edx, edx
mov dl, byte [eax + 0x470e9b]
jmp dword [edx*4 + 0x470e8f]
mov ecx, dword [ebp - 0x6f4]
cmp dword [ecx + 0x1060], 0x100
jne 0x46f6c0
mov dword [ebp - 0x10], 0
jmp 0x46f69c
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x680]
jae 0x46f6c0
mov eax, dword [ebp - 0x10]
xor edx, edx
mov ecx, 0x100
div ecx
mov eax, dword [ebp - 0x678]
add eax, dword [ebp - 0x10]
mov byte [eax], dl
jmp 0x46f693
jmp 0x46faa3
push 0x208
push 0
lea ecx, [ebp - 0x218]
push ecx
call fcn.004e9480
add esp, 0xc
mov edx, dword [ebp - 0x2a8]
push edx
mov ecx, dword [ebp - 0x6f4]
add ecx, 0x10a0
call fcn.0047eac0
mov byte [ebp - 0x6fc], al
cmp byte [ebp - 0x6fc], 0x39
je 0x46f719
cmp byte [ebp - 0x6fc], 0x41
je 0x46f745
cmp byte [ebp - 0x6fc], 0x42
je 0x46f772
jmp 0x46f79d
mov eax, dword [ebp - 0x6f4]
add eax, 0x8ec
push eax
push 0x208
lea ecx, [ebp - 0x218]
push ecx
push 0
push 0x55e3ac
push 0x55e3b8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
jmp 0x46f79d
mov edx, dword [ebp - 0x6f4]
add edx, 0x8ec
push edx
push 0x208
lea eax, [ebp - 0x218]
push eax
push 0
push 0x55e3c8
push 0x55e3d4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
jmp 0x46f79d
mov ecx, dword [ebp - 0x6f4]
add ecx, 0x8ec
push ecx
push 0x208
lea edx, [ebp - 0x218]
push edx
push 0
push 0x55e3e4
push 0x55e3f0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0
push 0
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0050f0f2
test eax, eax
je 0x46f960
lea ecx, [ebp - 0x2d0]
call fcn.0050f3ec
mov dword [ebp - 0x69c], eax
mov ecx, dword [ebp - 0x69c]
push ecx
call fcn.004e9f6e
add esp, 4
mov dword [ebp - 0x470], eax
cmp dword [ebp - 0x470], 0
jne 0x46f846
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb2
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6b4], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6b4]
jmp 0x470e7e
mov eax, dword [ebp - 0x69c]
push eax
push 0
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.004e9480
add esp, 0xc
mov edx, dword [ebp - 0x69c]
push edx
mov eax, dword [ebp - 0x470]
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0050f20f
lea ecx, [ebp - 0x2d0]
call fcn.0050f30d
mov ecx, dword [ebp - 0x69c]
cmp ecx, dword [ebp - 0x680]
jbe 0x46f8b2
mov edx, dword [ebp - 0x680]
push edx
mov eax, dword [ebp - 0x470]
push eax
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9b20
add esp, 0xc
jmp 0x46f94f
mov edx, dword [ebp - 0x680]
mov dword [ebp - 0x6a0], edx
cmp dword [ebp - 0x6a0], 0
jbe 0x46f94f
mov eax, dword [ebp - 0x6a0]
cmp eax, dword [ebp - 0x69c]
jae 0x46f8e7
mov ecx, dword [ebp - 0x6a0]
mov dword [ebp - 0x700], ecx
jmp 0x46f8f3
mov edx, dword [ebp - 0x69c]
mov dword [ebp - 0x700], edx
mov eax, dword [ebp - 0x700]
push eax
mov ecx, dword [ebp - 0x470]
push ecx
mov edx, dword [ebp - 0x680]
sub edx, dword [ebp - 0x6a0]
mov eax, dword [ebp - 0x678]
add eax, edx
push eax
call fcn.004e9b20
add esp, 0xc
mov ecx, dword [ebp - 0x6a0]
cmp ecx, dword [ebp - 0x69c]
jbe 0x46f940
mov edx, dword [ebp - 0x6a0]
sub edx, dword [ebp - 0x69c]
mov dword [ebp - 0x6a0], edx
jmp 0x46f94a
mov dword [ebp - 0x6a0], 0
jmp 0x46f8be
mov eax, dword [ebp - 0x470]
push eax
call fcn.004e9e5d
add esp, 4
jmp 0x46f9bc
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb3
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6b8], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6b8]
jmp 0x470e7e
jmp 0x46faa3
mov edx, dword [ebp - 0x2a8]
push edx
mov ecx, dword [ebp - 0x6f4]
add ecx, 0x10a0
call fcn.0047eac0
movsx eax, al
mov dword [ebp - 0x704], eax
mov ecx, dword [ebp - 0x704]
sub ecx, 0x31
mov dword [ebp - 0x704], ecx
cmp dword [ebp - 0x704], 0x12
ja case.0x46fa08.9
mov eax, dword [ebp - 0x704]
xor edx, edx
mov dl, byte [eax + 0x470ed6]
jmp dword [edx*4 + 0x470eae]
mov dword [ebp - 0x2a0], 1
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 2
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 3
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 4
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 5
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 6
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 7
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 8
jmp case.0x46fa08.9
mov dword [ebp - 0x2a0], 0xc
mov ecx, dword [ebp - 0x680]
push ecx
mov edx, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + edx*4 + 0x1060]
push ecx
mov edx, dword [ebp - 0x678]
push edx
call fcn.004e9480
add esp, 0xc
mov eax, dword [ebp - 0x6f4]
cmp dword [eax + 0x1058], 0
je 0x470569
mov dword [ebp - 0x688], 0
mov ecx, dword [ebp - 0x674]
mov edx, dword [ebp - 0x2a4]
lea eax, [edx + ecx - 1]
xor edx, edx
div dword [ebp - 0x674]
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x6a4]
shl eax, 2
push eax
call fcn.004e9f6e
add esp, 4
mov dword [ebp - 0x688], eax
cmp dword [ebp - 0x688], 0
jne 0x46fb5b
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb4
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6bc], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6bc]
jmp 0x470e7e
mov edx, dword [ebp - 0x6a4]
shl edx, 2
push edx
push 0
mov eax, dword [ebp - 0x688]
push eax
call fcn.004e9480
add esp, 0xc
mov dword [ebp - 0x46c], 0
jmp 0x46fb91
mov ecx, dword [ebp - 0x46c]
add ecx, 1
mov dword [ebp - 0x46c], ecx
mov edx, dword [ebp - 0x46c]
cmp edx, dword [ebp - 0x6a4]
jae 0x46fbbd
call fcn.004eb354
xor edx, edx
div dword [ebp - 0x6a4]
mov eax, dword [ebp - 0x46c]
mov ecx, dword [ebp - 0x688]
mov dword [ecx + eax*4], edx
jmp 0x46fb82
mov dword [ebp - 0x46c], 0
jmp 0x46fbd8
mov edx, dword [ebp - 0x46c]
add edx, 1
mov dword [ebp - 0x46c], edx
mov eax, dword [ebp - 0x46c]
cmp eax, dword [ebp - 0x6a4]
jae 0x46ffc0
mov dword [ebp - 0x3e0], 0
mov ecx, dword [ebp - 0x674]
mov dword [ebp - 0x464], ecx
mov eax, dword [ebp - 0x2a4]
xor edx, edx
div dword [ebp - 0x674]
test edx, edx
je 0x46fc40
mov edx, dword [ebp - 0x46c]
mov eax, dword [ebp - 0x688]
mov ecx, dword [ebp - 0x6a4]
sub ecx, dword [eax + edx*4]
cmp ecx, 1
jne 0x46fc40
mov eax, dword [ebp - 0x2a4]
xor edx, edx
div dword [ebp - 0x674]
mov dword [ebp - 0x464], edx
mov edx, dword [ebp - 0x46c]
mov eax, dword [ebp - 0x688]
mov ecx, dword [eax + edx*4]
imul ecx, dword [ebp - 0x674]
mov dword [ebp - 0x6a8], ecx
mov dword [ebp - 0x10], 0
jmp 0x46fc6e
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x674]
jae 0x46fd01
mov ecx, dword [ebp - 0x6a8]
add ecx, dword [ebp - 0x10]
shr ecx, 0x18
mov edx, dword [ebp - 0x10]
shl edx, 9
mov eax, dword [ebp - 0x678]
mov byte [eax + edx + 0x1fc], cl
mov ecx, dword [ebp - 0x6a8]
add ecx, dword [ebp - 0x10]
shr ecx, 0x10
mov edx, dword [ebp - 0x10]
shl edx, 9
mov eax, dword [ebp - 0x678]
mov byte [eax + edx + 0x1fd], cl
mov ecx, dword [ebp - 0x6a8]
add ecx, dword [ebp - 0x10]
shr ecx, 8
mov edx, dword [ebp - 0x10]
shl edx, 9
mov eax, dword [ebp - 0x678]
mov byte [eax + edx + 0x1fe], cl
mov ecx, dword [ebp - 0x6a8]
add ecx, dword [ebp - 0x10]
and ecx, 0xff
mov edx, dword [ebp - 0x10]
shl edx, 9
mov eax, dword [ebp - 0x678]
mov byte [eax + edx + 0x1ff], cl
jmp 0x46fc65
mov ecx, dword [ebp - 0x46c]
mov edx, dword [ebp - 0x688]
mov eax, dword [edx + ecx*4]
imul eax, dword [ebp - 0x674]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x464]
shl ecx, 9
mov dword [ebp - 0x2ac], ecx
mov edx, dword [ebp - 0x468]
push edx
mov eax, dword [ebp - 0x2ac]
push eax
mov ecx, dword [ebp - 0x678]
push ecx
mov edx, dword [ebp - 0x2b0]
push edx
mov eax, dword [ebp + 8]
imul eax, eax, 0x245
mov ecx, dword [ebp - 0x6f4]
mov edx, dword [ecx + eax + 0x18b9]
push edx
lea eax, [ebp - 0x2bc]
push eax
call fcn.004c00af
add esp, 0x18
mov dword [ebp - 0x694], eax
push 0x80
push 0
lea ecx, [ebp - 0x460]
push ecx
call fcn.004e9480
add esp, 0xc
mov eax, dword [ebp - 0x46c]
imul eax, eax, 0x64
xor edx, edx
div dword [ebp - 0x6a4]
push eax
mov edx, dword [ebp - 0x2a8]
push edx
push 0x55e400
lea eax, [ebp - 0x460]
push eax
call fcn.004e998d
add esp, 0x10
lea ecx, [ebp - 0x460]
push ecx
lea edx, [ebp - 0x298]
push edx
call fcn.004ea370
add esp, 8
test eax, eax
je 0x46fe11
lea eax, [ebp - 0x460]
push eax
lea ecx, [ebp - 0x298]
push ecx
call fcn.004e96e0
add esp, 8
push 0
push 0xf
push 0x80ffff
push 0x56e7e4
push 0
lea edx, [ebp - 0x460]
push edx
push 6
push 1
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x6f4]
call fcn.00463ad1
cmp dword [ebp - 0x694], 0
jne 0x46ffbb
mov ecx, dword [ebp - 0x3e0]
add ecx, 1
mov dword [ebp - 0x3e0], ecx
mov edx, dword [ebp - 0x3e0]
cmp edx, dword [ebp - 0x684]
jle 0x46fee8
mov eax, dword [ebp + 8]
imul eax, eax, 0x245
mov ecx, dword [ebp - 0x6f4]
mov byte [ecx + eax + 0x18bd], 0xb5
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x2b0]
mov dword [edx], eax
mov ecx, dword [ebp - 0x68c]
mov edx, dword [ebp - 0x2ac]
mov dword [ecx + 4], edx
push 0x55e428
lea eax, [ebp - 0x670]
push eax
call fcn.004e998d
add esp, 8
lea ecx, [ebp - 0x670]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x678]
push edx
call fcn.004e9e5d
add esp, 4
mov eax, dword [ebp - 0x690]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x688]
push ecx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6c0], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6c0]
jmp 0x470e7e
mov edx, dword [ebp - 0x2bb]
and edx, 0xff
cmp edx, 0x79
je 0x46ff0d
mov eax, dword [ebp - 0x2bb]
and eax, 0xff
cmp eax, 0x37
jne 0x46ffb6
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb5
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2b0]
mov dword [eax], ecx
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x2ac]
mov dword [edx + 4], eax
push 0x55e440
lea ecx, [ebp - 0x670]
push ecx
call fcn.004e998d
add esp, 8
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x688]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6c4], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6c4]
jmp 0x470e7e
jmp 0x46fc40
jmp 0x46fbc9
mov dword [ebp - 0x46c], 0
jmp 0x46ffdb
mov eax, dword [ebp - 0x46c]
add eax, 1
mov dword [ebp - 0x46c], eax
mov ecx, dword [ebp - 0x46c]
cmp ecx, dword [ebp - 0x6a4]
jae 0x470555
mov dword [ebp - 0x3e0], 0
mov edx, dword [ebp - 0x674]
mov dword [ebp - 0x464], edx
mov eax, dword [ebp - 0x2a4]
xor edx, edx
div dword [ebp - 0x674]
test edx, edx
je 0x470043
mov eax, dword [ebp - 0x46c]
mov ecx, dword [ebp - 0x688]
mov edx, dword [ebp - 0x6a4]
sub edx, dword [ecx + eax*4]
cmp edx, 1
jne 0x470043
mov eax, dword [ebp - 0x2a4]
xor edx, edx
div dword [ebp - 0x674]
mov dword [ebp - 0x464], edx
mov eax, dword [ebp - 0x46c]
mov ecx, dword [ebp - 0x688]
mov edx, dword [ecx + eax*4]
imul edx, dword [ebp - 0x674]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x464]
shl eax, 9
mov dword [ebp - 0x2ac], eax
mov ecx, dword [ebp - 0x468]
push ecx
mov edx, dword [ebp - 0x2ac]
push edx
mov eax, dword [ebp - 0x690]
push eax
mov ecx, dword [ebp - 0x2b0]
push ecx
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + edx + 0x18b9]
push ecx
lea edx, [ebp - 0x2bc]
push edx
call fcn.004bff2c
add esp, 0x18
mov dword [ebp - 0x694], eax
mov eax, dword [ebp - 0x46c]
mov ecx, dword [ebp - 0x688]
mov edx, dword [ecx + eax*4]
imul edx, dword [ebp - 0x674]
mov dword [ebp - 0x6ac], edx
mov dword [ebp - 0x10], 0
jmp 0x4700e4
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x674]
jae 0x470177
mov edx, dword [ebp - 0x6ac]
add edx, dword [ebp - 0x10]
shr edx, 0x18
mov eax, dword [ebp - 0x10]
shl eax, 9
mov ecx, dword [ebp - 0x678]
mov byte [ecx + eax + 0x1fc], dl
mov edx, dword [ebp - 0x6ac]
add edx, dword [ebp - 0x10]
shr edx, 0x10
mov eax, dword [ebp - 0x10]
shl eax, 9
mov ecx, dword [ebp - 0x678]
mov byte [ecx + eax + 0x1fd], dl
mov edx, dword [ebp - 0x6ac]
add edx, dword [ebp - 0x10]
shr edx, 8
mov eax, dword [ebp - 0x10]
shl eax, 9
mov ecx, dword [ebp - 0x678]
mov byte [ecx + eax + 0x1fe], dl
mov edx, dword [ebp - 0x6ac]
add edx, dword [ebp - 0x10]
and edx, 0xff
mov eax, dword [ebp - 0x10]
shl eax, 9
mov ecx, dword [ebp - 0x678]
mov byte [ecx + eax + 0x1ff], dl
jmp 0x4700db
push 0x80
push 0
lea edx, [ebp - 0x460]
push edx
call fcn.004e9480
add esp, 0xc
mov eax, dword [ebp - 0x46c]
imul eax, eax, 0x64
xor edx, edx
div dword [ebp - 0x6a4]
push eax
mov eax, dword [ebp - 0x2a8]
push eax
push 0x55e458
lea ecx, [ebp - 0x460]
push ecx
call fcn.004e998d
add esp, 0x10
lea edx, [ebp - 0x460]
push edx
lea eax, [ebp - 0x298]
push eax
call fcn.004ea370
add esp, 8
test eax, eax
je 0x470214
lea ecx, [ebp - 0x460]
push ecx
lea edx, [ebp - 0x298]
push edx
call fcn.004e96e0
add esp, 8
push 0
push 0xf
push 0x80ffff
push 0x56e7e8
push 0
lea eax, [ebp - 0x460]
push eax
push 6
push 1
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x6f4]
call fcn.00463ad1
cmp dword [ebp - 0x694], 0
jne 0x4703be
mov edx, dword [ebp - 0x3e0]
add edx, 1
mov dword [ebp - 0x3e0], edx
mov eax, dword [ebp - 0x3e0]
cmp eax, dword [ebp - 0x684]
jle 0x4702eb
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb6
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2b0]
mov dword [eax], ecx
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x2ac]
mov dword [edx + 4], eax
push 0x55e47c
lea ecx, [ebp - 0x670]
push ecx
call fcn.004e998d
add esp, 8
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x688]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6c8], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6c8]
jmp 0x470e7e
mov eax, dword [ebp - 0x2bb]
and eax, 0xff
cmp eax, 0x79
je 0x470310
mov ecx, dword [ebp - 0x2bb]
and ecx, 0xff
cmp ecx, 0x37
jne 0x4703b9
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb6
mov ecx, dword [ebp - 0x68c]
mov edx, dword [ebp - 0x2b0]
mov dword [ecx], edx
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2ac]
mov dword [eax + 4], ecx
push 0x55e494
lea edx, [ebp - 0x670]
push edx
call fcn.004e998d
add esp, 8
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov eax, dword [ebp - 0x688]
push eax
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6cc], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6cc]
jmp 0x470e7e
jmp 0x470043
mov dword [ebp - 0x67c], 0
jmp 0x4703d9
mov ecx, dword [ebp - 0x67c]
add ecx, 1
mov dword [ebp - 0x67c], ecx
mov edx, dword [ebp - 0x67c]
cmp edx, dword [ebp - 0x2ac]
jae 0x470550
mov eax, dword [ebp - 0x690]
add eax, dword [ebp - 0x67c]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [ebp - 0x678]
add edx, dword [ebp - 0x67c]
xor eax, eax
mov al, byte [edx]
cmp ecx, eax
je 0x47054b
mov ecx, dword [ebp - 0x68c]
xor edx, edx
mov dl, byte [ecx + 0xa]
mov eax, dword [ebp - 0x68c]
xor ecx, ecx
mov cl, byte [eax + 0xb]
cmp edx, ecx
jne 0x47048d
mov edx, dword [ebp - 0x67c]
shr edx, 9
mov eax, dword [ebp - 0x2b0]
add eax, edx
mov ecx, dword [ebp - 0x68c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x67c]
xor edx, edx
mov ecx, 0x200
div ecx
mov eax, dword [ebp - 0x68c]
mov word [eax + 8], dx
mov ecx, dword [ebp - 0x678]
add ecx, dword [ebp - 0x67c]
mov edx, dword [ebp - 0x68c]
mov al, byte [ecx]
mov byte [edx + 0xa], al
mov ecx, dword [ebp - 0x690]
add ecx, dword [ebp - 0x67c]
mov edx, dword [ebp - 0x68c]
mov al, byte [ecx]
mov byte [edx + 0xb], al
mov ecx, dword [ebp - 0x6f4]
cmp dword [ecx + 0x1054], 0
jne 0x47053c
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb7
push 0x55e4ac
lea ecx, [ebp - 0x670]
push ecx
call fcn.004e998d
add esp, 8
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x6f4]
mov dword [eax + 0x1054], 1
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov eax, dword [ebp - 0x688]
push eax
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6d0], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6d0]
jmp 0x470e7e
mov ecx, dword [ebp - 0x2c0]
add ecx, 1
mov dword [ebp - 0x2c0], ecx
jmp 0x4703ca
jmp 0x46ffcc
mov edx, dword [ebp - 0x688]
push edx
call fcn.004e9e5d
add esp, 4
jmp 0x470cfe
mov dword [ebp - 0x46c], 0
jmp 0x470587
mov eax, dword [ebp - 0x46c]
add eax, dword [ebp - 0x674]
mov dword [ebp - 0x46c], eax
mov ecx, dword [ebp - 0x46c]
cmp ecx, dword [ebp - 0x2a4]
jae 0x470866
mov dword [ebp - 0x3e0], 0
mov edx, dword [ebp - 0x674]
mov dword [ebp - 0x464], edx
mov eax, dword [ebp - 0x2a4]
sub eax, dword [ebp - 0x46c]
cmp eax, dword [ebp - 0x674]
jae 0x4705d5
mov ecx, dword [ebp - 0x2a4]
sub ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x464], ecx
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x464]
shl eax, 9
mov dword [ebp - 0x2ac], eax
mov ecx, dword [ebp - 0x468]
push ecx
mov edx, dword [ebp - 0x2ac]
push edx
mov eax, dword [ebp - 0x678]
push eax
mov ecx, dword [ebp - 0x2b0]
push ecx
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + edx + 0x18b9]
push ecx
lea edx, [ebp - 0x2bc]
push edx
call fcn.004c00af
add esp, 0x18
mov dword [ebp - 0x694], eax
push 0x80
push 0
lea eax, [ebp - 0x460]
push eax
call fcn.004e9480
add esp, 0xc
mov eax, dword [ebp - 0x46c]
imul eax, eax, 0x64
xor edx, edx
div dword [ebp - 0x2a4]
push eax
mov ecx, dword [ebp - 0x2a8]
push ecx
push str.L_d:_CopyCompare___Write____3d______
lea edx, [ebp - 0x460]
push edx
call fcn.004e998d
add esp, 0x10
lea eax, [ebp - 0x460]
push eax
lea ecx, [ebp - 0x298]
push ecx
call fcn.004ea370
add esp, 8
test eax, eax
je 0x4706d5
lea edx, [ebp - 0x460]
push edx
lea eax, [ebp - 0x298]
push eax
call fcn.004e96e0
add esp, 8
push 0
push 0xf
push 0x80ffff
push 0x56e7ec
push 0
lea ecx, [ebp - 0x460]
push ecx
push 6
push 1
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x6f4]
call fcn.00463ad1
cmp dword [ebp - 0x694], 0
jne 0x470861
mov eax, dword [ebp - 0x3e0]
add eax, 1
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3e0]
cmp ecx, dword [ebp - 0x684]
jle 0x47079d
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb5
mov ecx, dword [ebp - 0x68c]
mov edx, dword [ebp - 0x2b0]
mov dword [ecx], edx
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2ac]
mov dword [eax + 4], ecx
push 0x55e4f0
lea edx, [ebp - 0x670]
push edx
call fcn.004e998d
add esp, 8
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6d4], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6d4]
jmp 0x470e7e
mov eax, dword [ebp - 0x2bb]
and eax, 0xff
cmp eax, 0x79
je 0x4707c2
mov ecx, dword [ebp - 0x2bb]
and ecx, 0xff
cmp ecx, 0x37
jne 0x47085c
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb5
mov ecx, dword [ebp - 0x68c]
mov edx, dword [ebp - 0x2b0]
mov dword [ecx], edx
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2ac]
mov dword [eax + 4], ecx
push 0x55e508
lea edx, [ebp - 0x670]
push edx
call fcn.004e998d
add esp, 8
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6d8], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6d8]
jmp 0x470e7e
jmp 0x4705d5
jmp 0x470575
mov dword [ebp - 0x46c], 0
jmp 0x470884
mov eax, dword [ebp - 0x46c]
add eax, dword [ebp - 0x674]
mov dword [ebp - 0x46c], eax
mov ecx, dword [ebp - 0x46c]
cmp ecx, dword [ebp - 0x2a4]
jae 0x470cfe
mov dword [ebp - 0x3e0], 0
mov edx, dword [ebp - 0x680]
push edx
push 0
mov eax, dword [ebp - 0x690]
push eax
call fcn.004e9480
add esp, 0xc
mov ecx, dword [ebp - 0x674]
mov dword [ebp - 0x464], ecx
mov edx, dword [ebp - 0x2a4]
sub edx, dword [ebp - 0x46c]
cmp edx, dword [ebp - 0x674]
jae 0x4708ea
mov eax, dword [ebp - 0x2a4]
sub eax, dword [ebp - 0x46c]
mov dword [ebp - 0x464], eax
mov ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x464]
shl edx, 9
mov dword [ebp - 0x2ac], edx
mov eax, dword [ebp - 0x468]
push eax
mov ecx, dword [ebp - 0x2ac]
push ecx
mov edx, dword [ebp - 0x690]
push edx
mov eax, dword [ebp - 0x2b0]
push eax
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov eax, dword [edx + ecx + 0x18b9]
push eax
lea ecx, [ebp - 0x2bc]
push ecx
call fcn.004bff2c
add esp, 0x18
mov dword [ebp - 0x694], eax
push 0x80
push 0
lea edx, [ebp - 0x460]
push edx
call fcn.004e9480
add esp, 0xc
mov eax, dword [ebp - 0x46c]
imul eax, eax, 0x64
xor edx, edx
div dword [ebp - 0x2a4]
push eax
mov eax, dword [ebp - 0x2a8]
push eax
push str.L_d:_CopyCompare___Read____3d______
lea ecx, [ebp - 0x460]
push ecx
call fcn.004e998d
add esp, 0x10
lea edx, [ebp - 0x460]
push edx
lea eax, [ebp - 0x298]
push eax
call fcn.004ea370
add esp, 8
test eax, eax
je 0x4709ea
lea ecx, [ebp - 0x460]
push ecx
lea edx, [ebp - 0x298]
push edx
call fcn.004e96e0
add esp, 8
push 0
push 0xf
push 0x80ffff
push 0x56e7f0
push 0
lea eax, [ebp - 0x460]
push eax
push 6
push 1
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x6f4]
call fcn.00463ad1
cmp dword [ebp - 0x694], 0
jne 0x470b76
mov edx, dword [ebp - 0x3e0]
add edx, 1
mov dword [ebp - 0x3e0], edx
mov eax, dword [ebp - 0x3e0]
cmp eax, dword [ebp - 0x684]
jle 0x470ab2
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb6
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2b0]
mov dword [eax], ecx
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x2ac]
mov dword [edx + 4], eax
push 0x55e544
lea ecx, [ebp - 0x670]
push ecx
call fcn.004e998d
add esp, 8
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6dc], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6dc]
jmp 0x470e7e
mov edx, dword [ebp - 0x2bb]
and edx, 0xff
cmp edx, 0x79
je 0x470ad7
mov eax, dword [ebp - 0x2bb]
and eax, 0xff
cmp eax, 0x37
jne 0x470b71
mov ecx, dword [ebp + 8]
imul ecx, ecx, 0x245
mov edx, dword [ebp - 0x6f4]
mov byte [edx + ecx + 0x18bd], 0xb6
mov eax, dword [ebp - 0x68c]
mov ecx, dword [ebp - 0x2b0]
mov dword [eax], ecx
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x2ac]
mov dword [edx + 4], eax
push 0x55e55c
lea ecx, [ebp - 0x670]
push ecx
call fcn.004e998d
add esp, 8
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6e0], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6e0]
jmp 0x470e7e
jmp 0x4708ea
mov dword [ebp - 0x67c], 0
jmp 0x470b91
mov edx, dword [ebp - 0x67c]
add edx, 1
mov dword [ebp - 0x67c], edx
mov eax, dword [ebp - 0x67c]
cmp eax, dword [ebp - 0x2ac]
jae 0x470cf9
mov ecx, dword [ebp - 0x690]
add ecx, dword [ebp - 0x67c]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [ebp - 0x678]
add eax, dword [ebp - 0x67c]
xor ecx, ecx
mov cl, byte [eax]
cmp edx, ecx
je 0x470cf4
mov edx, dword [ebp - 0x68c]
xor eax, eax
mov al, byte [edx + 0xa]
mov ecx, dword [ebp - 0x68c]
xor edx, edx
mov dl, byte [ecx + 0xb]
cmp eax, edx
jne 0x470c45
mov eax, dword [ebp - 0x67c]
shr eax, 9
mov ecx, dword [ebp - 0x2b0]
add ecx, eax
mov edx, dword [ebp - 0x68c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x67c]
xor edx, edx
mov ecx, 0x200
div ecx
mov eax, dword [ebp - 0x68c]
mov word [eax + 8], dx
mov ecx, dword [ebp - 0x678]
add ecx, dword [ebp - 0x67c]
mov edx, dword [ebp - 0x68c]
mov al, byte [ecx]
mov byte [edx + 0xa], al
mov ecx, dword [ebp - 0x690]
add ecx, dword [ebp - 0x67c]
mov edx, dword [ebp - 0x68c]
mov al, byte [ecx]
mov byte [edx + 0xb], al
mov ecx, dword [ebp - 0x6f4]
cmp dword [ecx + 0x1054], 0
jne 0x470ce5
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb7
push 0x55e574
lea ecx, [ebp - 0x670]
push ecx
call fcn.004e998d
add esp, 8
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x6f4]
mov dword [eax + 0x1054], 1
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6e4], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6e4]
jmp 0x470e7e
mov eax, dword [ebp - 0x2c0]
add eax, 1
mov dword [ebp - 0x2c0], eax
jmp 0x470b82
jmp 0x470872
mov ecx, dword [ebp - 0x6f4]
cmp dword [ecx + 0x1054], 1
jne 0x470d40
push 0x55e590
lea edx, [ebp - 0x670]
push edx
call fcn.004e998d
add esp, 8
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, dword [ebp - 0x29c]
add ecx, dword [ebp - 0x2c0]
mov dword [ebp - 0x29c], ecx
mov edx, dword [ebp - 0x6f4]
cmp dword [edx + 0x1054], 2
jne 0x470dc8
cmp dword [ebp - 0x2c0], 0
jne 0x470dc8
push 0x55e5ac
lea eax, [ebp - 0x670]
push eax
call fcn.004e998d
add esp, 8
lea ecx, [ebp - 0x670]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov dword [ebp - 0x29c], 0
mov edx, dword [ebp - 0x678]
push edx
call fcn.004e9e5d
add esp, 4
mov eax, dword [ebp - 0x690]
push eax
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6e8], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6e8]
jmp 0x470e7e
jmp 0x46f5c4
mov ecx, dword [ebp - 0x6f4]
cmp dword [ecx + 0x1054], 1
jne 0x470e3e
cmp dword [ebp - 0x29c], 0
jbe 0x470e3e
mov edx, dword [ebp + 8]
imul edx, edx, 0x245
mov eax, dword [ebp - 0x6f4]
mov byte [eax + edx + 0x18bd], 0xb7
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.004e9e5d
add esp, 4
mov edx, dword [ebp - 0x690]
push edx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6ec], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6ec]
jmp 0x470e7e
mov eax, dword [ebp - 0x678]
push eax
call fcn.004e9e5d
add esp, 4
mov ecx, dword [ebp - 0x690]
push ecx
call fcn.004e9e5d
add esp, 4
mov dword [ebp - 0x6f0], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d0]
call fcn.0050f035
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 4