Function at 0x419ebf
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45f8c4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x614
push edi
mov dword [ebp - 0x568], ecx
push 1
mov ecx, dword [ebp - 0x568]
call fcn.00453d7d
mov eax, dword [ebp - 0x568]
cmp dword [eax + 0xb80], 0
je 0x419f52
mov ecx, dword [ebp - 0x568]
add ecx, 0xb64
call fcn.0041b940
cmp eax, 1
jne 0x419f52
mov ecx, dword [ebp - 0x568]
xor edx, edx
cmp dword [ecx + 0xba0], 0
sete dl
mov eax, dword [ebp - 0x568]
mov dword [eax + 0xba0], edx
mov ecx, dword [ebp - 0x568]
mov edx, dword [ecx + 0xba0]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0xb64
call fcn.0041b970
push 0x2e
mov ecx, dword [ebp - 0x568]
add ecx, 0xc04
call fcn.0044fa9b
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
push eax
lea ecx, [ebp - 0x4fc]
push ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0xc04
call fcn.0044fa23
mov dword [ebp - 0x56c], eax
mov edx, dword [ebp - 0x56c]
mov dword [ebp - 0x570], edx
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x570]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0xc04
call fcn.00455259
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4fc]
call fcn.00455120
push 0x3f7
mov ecx, dword [ebp - 0x568]
call fcn.004546e9
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba80
mov ecx, dword [ebp - 0x568]
call fcn.0041b0df
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.00407170
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x568]
add ecx, 0x68
call fcn.00407190
cmp dword [ebp + 8], 0
je 0x41a87d
mov ecx, dword [ebp - 0x568]
cmp dword [ecx + 0xba0], 0
jne 0x41a87d
push 0x4741b0
mov ecx, dword [ebp - 0x568]
add ecx, 0xc04
call fcn.00455488
mov dl, byte [0x4797bc]
mov byte [ebp - 0x124], dl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x123]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x128], 0
jmp 0x41a085
mov eax, dword [ebp - 0x128]
add eax, 1
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x128]
cmp ecx, dword [ebp - 0x10]
jge 0x41a878
push 0x4741b8
mov edx, dword [ebp - 0x128]
push edx
lea eax, [ebp - 0x504]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x574], eax
mov ecx, dword [ebp - 0x574]
mov dword [ebp - 0x578], ecx
mov dword [ebp - 4], 1
mov ecx, dword [ebp - 0x578]
call fcn.00402280
neg eax
sbb eax, eax
inc eax
mov byte [ebp - 0x500], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x504]
call fcn.00455120
mov edx, dword [ebp - 0x500]
and edx, 0xff
test edx, edx
je 0x41a1cb
mov al, byte [0x4797c0]
mov byte [ebp - 0x190], al
mov ecx, 0x18
xor eax, eax
lea edi, [ebp - 0x18f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x64
lea ecx, [ebp - 0x190]
push ecx
push 0x147
mov ecx, 0x479934
call fcn.0041c0a1
push 0x4797c4
lea ecx, [ebp - 0x12c]
call fcn.0045518e
mov dword [ebp - 4], 2
lea edx, [ebp - 0x190]
push edx
push 0x4741c0
lea eax, [ebp - 0x12c]
push eax
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x12c]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
push 0x4741c4
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x57c], ecx
mov edx, dword [ebp - 0x57c]
push edx
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x68
call fcn.004512a8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x12c]
call fcn.00455120
jmp 0x41a873
push 0x4741cc
mov ecx, dword [ebp - 0x128]
push ecx
lea edx, [ebp - 0x50c]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x580]
mov dword [ebp - 0x584], eax
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x584]
call fcn.00402280
neg eax
sbb eax, eax
inc eax
mov byte [ebp - 0x508], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x50c]
call fcn.00455120
mov ecx, dword [ebp - 0x508]
and ecx, 0xff
test ecx, ecx
je 0x41a31f
mov edx, dword [ebp - 0x128]
push edx
lea eax, [ebp - 0x510]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x588]
mov dword [ebp - 0x58c], ecx
mov dword [ebp - 4], 4
mov ecx, dword [ebp - 0x58c]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x510]
call fcn.00455120
mov edx, dword [ebp - 0x128]
push edx
lea eax, [ebp - 0x514]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x590], eax
mov ecx, dword [ebp - 0x590]
mov dword [ebp - 0x594], ecx
mov dword [ebp - 4], 5
mov edx, dword [ebp - 0x594]
push edx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x598], eax
mov ecx, dword [ebp - 0x598]
push ecx
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x68
call fcn.004512d4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x514]
call fcn.00455120
jmp 0x41a873
push 0x4741d4
mov eax, dword [ebp - 0x128]
push eax
lea ecx, [ebp - 0x51c]
push ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x59c], eax
mov edx, dword [ebp - 0x59c]
mov dword [ebp - 0x5a0], edx
mov dword [ebp - 4], 6
mov ecx, dword [ebp - 0x5a0]
call fcn.00402280
test eax, eax
jne 0x41a396
xor eax, eax
cmp dword [ebp - 0x18], 3
setge al
mov byte [ebp - 0x520], al
mov ecx, dword [ebp - 0x520]
and ecx, 0xff
test ecx, ecx
je 0x41a396
mov dword [ebp - 0x5a4], 1
jmp 0x41a3a0
mov dword [ebp - 0x5a4], 0
mov dl, byte [ebp - 0x5a4]
mov byte [ebp - 0x518], dl
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x51c]
call fcn.00455120
mov eax, dword [ebp - 0x518]
and eax, 0xff
test eax, eax
je 0x41a4ac
mov ecx, dword [ebp - 0x128]
push ecx
lea edx, [ebp - 0x524]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5a8], eax
mov eax, dword [ebp - 0x5a8]
mov dword [ebp - 0x5ac], eax
mov dword [ebp - 4], 7
mov ecx, dword [ebp - 0x5ac]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x524]
call fcn.00455120
mov ecx, dword [ebp - 0x128]
push ecx
lea edx, [ebp - 0x528]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5b0], eax
mov eax, dword [ebp - 0x5b0]
mov dword [ebp - 0x5b4], eax
mov dword [ebp - 4], 8
mov ecx, dword [ebp - 0x5b4]
push ecx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x5b8], edx
mov eax, dword [ebp - 0x5b8]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0x68
call fcn.004512d4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x528]
call fcn.00455120
jmp 0x41a873
push 0x4741dc
mov edx, dword [ebp - 0x128]
push edx
lea eax, [ebp - 0x530]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5bc], eax
mov ecx, dword [ebp - 0x5bc]
mov dword [ebp - 0x5c0], ecx
mov dword [ebp - 4], 9
mov ecx, dword [ebp - 0x5c0]
call fcn.00402280
neg eax
sbb eax, eax
inc eax
mov byte [ebp - 0x52c], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x530]
call fcn.00455120
mov edx, dword [ebp - 0x52c]
and edx, 0xff
test edx, edx
je 0x41a600
mov eax, dword [ebp - 0x128]
push eax
lea ecx, [ebp - 0x534]
push ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5c4], eax
mov edx, dword [ebp - 0x5c4]
mov dword [ebp - 0x5c8], edx
mov dword [ebp - 4], 0xa
mov ecx, dword [ebp - 0x5c8]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x534]
call fcn.00455120
mov eax, dword [ebp - 0x128]
push eax
lea ecx, [ebp - 0x538]
push ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5cc], eax
mov edx, dword [ebp - 0x5cc]
mov dword [ebp - 0x5d0], edx
mov dword [ebp - 4], 0xb
mov eax, dword [ebp - 0x5d0]
push eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x5d4], ecx
mov edx, dword [ebp - 0x5d4]
push edx
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x68
call fcn.004512d4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x538]
call fcn.00455120
jmp 0x41a873
mov ecx, dword [ebp - 0x128]
push ecx
lea edx, [ebp - 0x1a4]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 4], 0xc
push 0x4797c8
lea ecx, [ebp - 0x194]
call fcn.0045518e
mov byte [ebp - 4], 0xd
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
push 0x4741f0
push 0x4741f8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x198], eax
push 0x4797cc
lea ecx, [ebp - 0x19c]
call fcn.0045518e
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x1a0], 0
jmp 0x41a68c
mov eax, dword [ebp - 0x1a0]
add eax, 1
mov dword [ebp - 0x1a0], eax
mov ecx, dword [ebp - 0x1a0]
cmp ecx, dword [ebp - 0x198]
jae 0x41a843
mov edx, dword [ebp - 0x1a0]
add edx, 1
push edx
push 0x474204
lea eax, [ebp - 0x19c]
push eax
call fcn.0044fdfe
add esp, 0xc
mov ecx, 0x479910
call fcn.00402270
push eax
push 0x1f4
lea ecx, [ebp - 0x124]
push ecx
push 0x4797d0
lea ecx, [ebp - 0x19c]
call fcn.00402270
push eax
push 0x474210
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x124]
push edx
push 0x47421c
lea eax, [ebp - 0x194]
push eax
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x194]
call fcn.00402270
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402280
test eax, eax
jne 0x41a83e
mov ecx, dword [ebp - 0x1a0]
add ecx, 1
push ecx
push 0x474220
lea edx, [ebp - 0x19c]
push edx
call fcn.0044fdfe
add esp, 0xc
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
lea ecx, [ebp - 0x19c]
call fcn.00402270
push eax
push 0x474238
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, 1
jne 0x41a83e
mov eax, dword [ebp - 0x128]
push eax
lea ecx, [ebp - 0x53c]
push ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5d8], eax
mov edx, dword [ebp - 0x5d8]
mov dword [ebp - 0x5dc], edx
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x5dc]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x53c]
call fcn.00455120
mov eax, dword [ebp - 0x128]
push eax
lea ecx, [ebp - 0x540]
push ecx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5e0], eax
mov edx, dword [ebp - 0x5e0]
mov dword [ebp - 0x5e4], edx
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x5e4]
push eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x5e8], ecx
mov edx, dword [ebp - 0x5e8]
push edx
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x68
call fcn.004512d4
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x540]
call fcn.00455120
jmp 0x41a67d
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x19c]
call fcn.00455120
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x194]
call fcn.00455120
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a4]
call fcn.00455120
jmp 0x41a076
jmp 0x41afda
mov ecx, dword [ebp - 0x568]
cmp dword [ecx + 0xba0], 0
je 0x41a8ad
cmp dword [ebp + 8], 0
jne 0x41a8ad
push 0x474244
mov ecx, dword [ebp - 0x568]
add ecx, 0xc04
call fcn.00455488
jmp 0x41afda
push 0x47424c
mov ecx, dword [ebp - 0x568]
add ecx, 0xc04
call fcn.00455488
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.00407170
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x3b0], 0
lea ecx, [ebp - 0x1b0]
call fcn.00402210
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x1b8]
call fcn.00402210
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x1ac]
call fcn.00402210
mov byte [ebp - 4], 0x13
mov dl, byte [0x4797d4]
mov byte [ebp - 0x3ac], dl
mov ecx, 0x7c
xor eax, eax
lea edi, [ebp - 0x3ab]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x1f4
lea eax, [ebp - 0x3ac]
push eax
push 0x13f
mov ecx, 0x479934
call fcn.0041c0a1
lea ecx, [ebp - 0x3ac]
push ecx
push 0x474254
lea edx, [ebp - 0x1b0]
push edx
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea eax, [ebp - 0x3ac]
push eax
push 0x140
mov ecx, 0x479934
call fcn.0041c0a1
lea ecx, [ebp - 0x3ac]
push ecx
push 0x474258
lea edx, [ebp - 0x1ac]
push edx
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea eax, [ebp - 0x3ac]
push eax
push 0x13e
mov ecx, 0x479934
call fcn.0041c0a1
lea ecx, [ebp - 0x3ac]
push ecx
push 0x47425c
lea edx, [ebp - 0x1b8]
push edx
call fcn.0044fdfe
add esp, 0xc
lea eax, [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0xc00
push ecx
call fcn.0041b480
and eax, 0xff
test eax, eax
je 0x41aa02
mov dword [ebp - 0x1b4], 0
jmp 0x41aa67
lea edx, [ebp - 0x1b0]
push edx
mov eax, dword [ebp - 0x568]
add eax, 0xc00
push eax
call fcn.0041b480
and eax, 0xff
test eax, eax
je 0x41aa2f
mov dword [ebp - 0x1b4], 1
jmp 0x41aa67
lea ecx, [ebp - 0x1ac]
push ecx
mov edx, dword [ebp - 0x568]
add edx, 0xc00
push edx
call fcn.0041b480
and eax, 0xff
test eax, eax
je 0x41aa5d
mov dword [ebp - 0x1b4], 2
jmp 0x41aa67
mov dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x5ec], eax
cmp dword [ebp - 0x5ec], 0
je 0x41aa9b
cmp dword [ebp - 0x5ec], 1
je 0x41abc3
cmp dword [ebp - 0x5ec], 2
je 0x41ad5b
jmp 0x41afaa
mov dword [ebp - 0x3b0], 0
jmp 0x41aab6
mov ecx, dword [ebp - 0x3b0]
add ecx, 1
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3b0]
cmp edx, dword [ebp - 0x1a8]
jge 0x41abbe
cmp dword [ebp - 0x3b0], 0
jne 0x41ab61
mov al, byte [0x4797d8]
mov byte [ebp - 0x418], al
mov ecx, 0x18
xor eax, eax
lea edi, [ebp - 0x417]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x64
lea ecx, [ebp - 0x418]
push ecx
push 0x147
mov ecx, 0x479934
call fcn.0041c0a1
push 0x4797dc
lea ecx, [ebp - 0x3b4]
call fcn.0045518e
mov byte [ebp - 4], 0x14
lea edx, [ebp - 0x418]
push edx
push 0x474260
lea eax, [ebp - 0x3b4]
push eax
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x3b4]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x3b4]
call fcn.00455120
jmp 0x41aaa7
mov ecx, dword [ebp - 0x3b0]
push ecx
lea edx, [ebp - 0x544]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5f0], eax
mov eax, dword [ebp - 0x5f0]
mov dword [ebp - 0x5f4], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x5f4]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x544]
call fcn.00455120
jmp 0x41aaa7
jmp 0x41afaa
mov dword [ebp - 0x3b0], 0
jmp 0x41abde
mov ecx, dword [ebp - 0x3b0]
add ecx, 1
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3b0]
cmp edx, dword [ebp - 0x1a8]
jge 0x41ad56
cmp dword [ebp - 0x3b0], 0
jne 0x41ac89
mov al, byte [0x4797e0]
mov byte [ebp - 0x480], al
mov ecx, 0x18
xor eax, eax
lea edi, [ebp - 0x47f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x64
lea ecx, [ebp - 0x480]
push ecx
push 0x147
mov ecx, 0x479934
call fcn.0041c0a1
push 0x4797e4
lea ecx, [ebp - 0x41c]
call fcn.0045518e
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0x480]
push edx
push 0x474264
lea eax, [ebp - 0x41c]
push eax
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x41c]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x41c]
call fcn.00455120
jmp 0x41abcf
push 0x474268
mov ecx, dword [ebp - 0x3b0]
push ecx
lea edx, [ebp - 0x54c]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x5fc], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x5fc]
call fcn.00402280
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x548], al
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x54c]
call fcn.00455120
mov ecx, dword [ebp - 0x548]
and ecx, 0xff
test ecx, ecx
je 0x41ad51
mov edx, dword [ebp - 0x3b0]
push edx
lea eax, [ebp - 0x550]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x600], eax
mov ecx, dword [ebp - 0x600]
mov dword [ebp - 0x604], ecx
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x604]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x550]
call fcn.00455120
jmp 0x41abcf
jmp 0x41afaa
mov dword [ebp - 0x3b0], 0
jmp 0x41ad76
mov edx, dword [ebp - 0x3b0]
add edx, 1
mov dword [ebp - 0x3b0], edx
mov eax, dword [ebp - 0x3b0]
cmp eax, dword [ebp - 0x1a8]
jge 0x41afaa
cmp dword [ebp - 0x3b0], 0
jne 0x41ae22
mov cl, byte [0x4797e8]
mov byte [ebp - 0x4ec], cl
mov ecx, 0x18
xor eax, eax
lea edi, [ebp - 0x4eb]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x64
lea edx, [ebp - 0x4ec]
push edx
push 0x147
mov ecx, 0x479934
call fcn.0041c0a1
push 0x4797ec
lea ecx, [ebp - 0x488]
call fcn.0045518e
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x4ec]
push eax
push 0x47427c
lea ecx, [ebp - 0x488]
push ecx
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x488]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x488]
call fcn.00455120
jmp 0x41ad67
mov edx, dword [ebp - 0x3b0]
push edx
lea eax, [ebp - 0x484]
push eax
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov byte [ebp - 4], 0x1a
push 0x474280
mov ecx, dword [ebp - 0x3b0]
push ecx
lea edx, [ebp - 0x558]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x608], eax
mov eax, dword [ebp - 0x608]
mov dword [ebp - 0x60c], eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x60c]
call fcn.00402280
test eax, eax
je 0x41af0a
push 0x474290
mov ecx, dword [ebp - 0x3b0]
push ecx
lea edx, [ebp - 0x560]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x610], eax
mov eax, dword [ebp - 0x610]
mov dword [ebp - 0x614], eax
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x614]
call fcn.00402280
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x55c], al
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x560]
call fcn.00455120
mov ecx, dword [ebp - 0x55c]
and ecx, 0xff
test ecx, ecx
je 0x41af0a
mov dword [ebp - 0x618], 1
jmp 0x41af14
mov dword [ebp - 0x618], 0
mov dl, byte [ebp - 0x618]
mov byte [ebp - 0x554], dl
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x558]
call fcn.00455120
mov eax, dword [ebp - 0x554]
and eax, 0xff
test eax, eax
je 0x41af96
mov ecx, dword [ebp - 0x3b0]
push ecx
lea edx, [ebp - 0x564]
push edx
mov ecx, dword [ebp - 0x568]
add ecx, 0x974
call fcn.004071b0
mov dword [ebp - 0x61c], eax
mov eax, dword [ebp - 0x61c]
mov dword [ebp - 0x620], eax
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x620]
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba50
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x564]
call fcn.00455120
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x484]
call fcn.00455120
jmp 0x41ad67
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x1ac]
call fcn.00455120
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x1b8]
call fcn.00455120
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00455120
push 0
mov ecx, dword [ebp - 0x568]
call fcn.00453d7d
cmp dword [ebp + 8], 0
je 0x41b099
push 0x4742a4
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x1c]
call fcn.0041bab0
mov dword [ebp - 0x4f8], eax
push 0x4742ac
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x1c]
call fcn.0041bab0
mov dword [ebp - 0x4f0], eax
push 0x4742b4
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x1c]
call fcn.0041bab0
mov dword [ebp - 0x4f4], eax
cmp dword [ebp - 0x4f0], 0xffffffff
je 0x41b04a
mov ecx, dword [ebp - 0x4f0]
push ecx
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba20
jmp 0x41b097
cmp dword [ebp - 0x4f0], 0xffffffff
jne 0x41b073
cmp dword [ebp - 0x4f8], 0xffffffff
je 0x41b073
cmp dword [ebp - 0x18], 3
jl 0x41b073
mov edx, dword [ebp - 0x4f8]
push edx
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba20
jmp 0x41b097
cmp dword [ebp - 0x4f4], 0xffffffff
je 0x41b08d
mov eax, dword [ebp - 0x4f4]
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba20
jmp 0x41b097
push 0
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba20
jmp 0x41b0a3
push 0
mov ecx, dword [ebp - 0x1c]
call fcn.0041ba20
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
mov esp, ebp
pop ebp
ret 4