Function at 0x525aac
Capabilities:
Get memory capacity
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x8b9d36
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x490
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], ebx
movzx eax, byte [ebp + 0x14]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 0x4c]
test eax, eax
je 0x525afe
push 1
mov ecx, dword [ebp + 0x10]
push eax
call fcn.005c8498
xor al, al
lea ecx, [ebp - 0x1b0]
mov edx, dword [ebp + 8]
mov byte [ebp - 0x28], al
push edx
push ecx
call fcn.0043be78
add esp, 8
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1b0]
call fcn.004064e4
lea ecx, [ebp - 0x1ac]
push 0xa0c3c4
call fcn.004061ac
mov dword [ebp - 4], 1
mov edi, dword [ebp - 0x1b0]
test edi, edi
jne 0x525b5e
mov eax, dword [ebp - 0x1ac]
test eax, eax
jne 0x525b57
xor eax, eax
jmp 0x525bac
mov eax, 0xffffffff
jmp 0x525bac
mov esi, dword [ebp - 0x1ac]
test esi, esi
je 0x525ba7
mov al, byte [edi]
mov dl, byte [esi]
cmp al, dl
jl 0x525ba0
jle 0x525b79
mov eax, 1
jmp 0x525bac
mov dl, byte [edi]
cmp dl, byte [esi]
jne 0x525b99
or dl, dl
je 0x525b95
mov dl, byte [edi + 1]
cmp dl, byte [esi + 1]
jne 0x525b99
add edi, 2
add esi, 2
or dl, dl
jne 0x525b79
xor eax, eax
jmp 0x525b9e
sbb eax, eax
or eax, 1
jmp 0x525bac
mov eax, 0xffffffff
jmp 0x525bac
mov eax, 1
xor ebx, ebx
test eax, eax
sete bl
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1ac]
call fcn.00406220
test ebx, ebx
je 0x525bce
mov al, 1
mov byte [ebp - 0x28], al
mov al, byte [ebp + 0x24]
test al, al
je 0x525bfe
mov byte [0x90a7c0], 1
lea eax, [ebp - 0x198]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov eax, dword [ebp - 0x18c]
mov dword [0x9caef0], eax
mov dword [0x9caef4], 0
lea ecx, [ebp - 0x1a8]
call fcn.004e4b6c
mov dword [ebp - 4], 2
mov ecx, 0x9d7710
call fcn.004e2e74
movzx eax, al
test eax, eax
jne 0x525d5f
mov ecx, dword [ebp + 8]
call fcn.004e2de4
cmp eax, 1
je 0x526edb
lea eax, [ebp - 0x178]
mov ecx, dword [ebp + 8]
push eax
call fcn.004e4b7c
mov dword [ebp - 4], 3
lea eax, [ebp - 0x168]
mov ecx, dword [ebp + 8]
push eax
call fcn.004e4770
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x168]
lea eax, [ebp - 0x158]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x168]
lea eax, [ebp - 0x158]
push eax
call fcn.004e2d98
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x158]
call fcn.0040b540
lea ecx, [ebp - 0x148]
push 0x9d7710
call fcn.0052bc30
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x148]
lea eax, [ebp - 0x168]
push eax
call fcn.004e3380
lea ecx, [ebp - 0x138]
call fcn.004e4b6c
mov dword [ebp - 4], 7
mov ecx, dword [ebp + 8]
call fcn.004e2de4
lea ecx, [ebp - 0x138]
lea ebx, [ebp - 0x148]
lea edx, [ebp - 0x178]
push eax
push edx
push ebx
call fcn.004ec368
movzx eax, al
test eax, eax
je 0x525d15
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0x138]
push eax
call fcn.004e2d98
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x138]
call fcn.0040b540
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x148]
call fcn.0040b540
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x168]
call fcn.0040b540
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x178]
call fcn.0040b540
jmp 0x525d6e
lea ecx, [ebp - 0x1a8]
mov eax, dword [ebp + 8]
push eax
call fcn.004e2d98
lea ecx, [ebp - 0x114]
call fcn.0041cbf8
mov dword [ebp - 0x118], 0
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.0041cbf8
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.0041cbf8
mov al, 1
mov byte [ebp - 0x108], al
mov byte [ebp - 0x107], al
mov dword [ebp - 0x104], 0
mov dword [ebp - 4], 0xe
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x104], eax
lea ecx, [ebp - 0x1a8]
call fcn.004e2de4
xor edx, edx
cmp eax, 5
setne dl
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 0x108], dl
call fcn.004e2de4
cmp eax, 1
jne 0x525dff
mov al, 1
jmp 0x525e15
lea ecx, [ebp - 0x1a8]
call fcn.004e2de4
cmp eax, 3
je 0x528200
xor al, al
mov byte [ebp - 0x107], al
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x2b0]
test eax, eax
je 0x5281eb
mov eax, dword [eax + 0xa624]
cmp eax, 3
je 0x5281eb
xor eax, eax
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x1a8]
lea edx, [ebp - 0x100]
movzx eax, byte [ebp + 0x2c]
push eax
mov ebx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
push edx
mov edi, dword [ebp - 0x2c]
push dword [ebx + 0x290]
push esi
push edi
push ecx
mov ecx, dword [ebp + 0x10]
call fcn.005c7384
mov edx, dword [ebp - 0x14]
test eax, eax
mov dword [edx + 0x4c], eax
je 0x5264c0
mov al, byte [ebp + 0x24]
test al, al
je 0x525f2c
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0x9c]
push eax
call fcn.004e4e80
mov dword [ebp - 4], 0x6d
lea eax, [ebp - 0x9c]
push eax
call fcn.0040ba34
pop ecx
mov dword [ebp - 4], 0xe
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x24c], eax
mov dword [ebp - 4], 0x6e
mov dword [ebp - 4], 0xe
mov eax, dword [ebp - 0x98]
mov edx, dword [ebp - 0x94]
cmp eax, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
je 0x526fbd
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x244], eax
mov dword [ebp - 4], 0x6f
mov dword [ebp - 4], 0x70
mov dword [ebp - 4], 0x6f
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x24]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x24]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
cmp eax, edx
jne 0x525ee6
jmp 0x526fb4
lea eax, [ebp - 0x8c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov al, byte [0x90a7c0]
test al, al
je 0x526122
mov eax, dword [ebp - 0x80]
cmp eax, 0x100000
jb 0x525f63
mov eax, dword [0x9caef0]
sub eax, dword [0x9caef4]
test eax, eax
jae 0x526122
mov byte [0x90a7c0], 0
lea ecx, [ebp - 0x68]
call fcn.0041cbf8
mov dword [ebp - 0x6c], 0
mov dword [ebp - 4], 0x71
lea ecx, [ebp - 0x238]
push 0xa16040
call fcn.004061ac
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x234], 3
mov dword [ebp - 4], 0x72
lea edx, [ebp - 0x238]
mov eax, dword [ebp - 0x234]
and eax, 0xf
or eax, 0x30
mov ecx, dword [ebp - 0x23c]
push eax
push edx
call fcn.0043ec3c
xor ebx, ebx
cmp eax, 3
sete bl
mov dword [ebp - 4], 0x71
lea ecx, [ebp - 0x238]
call fcn.00406220
test ebx, ebx
jne 0x5260fc
mov dword [ebp - 4], 0xe
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x22c], eax
mov dword [ebp - 4], 0x73
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0x68]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x224], eax
mov dword [ebp - 4], 0x74
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x21c], eax
mov dword [ebp - 4], 0x75
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x214], eax
mov dword [ebp - 4], 0x76
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x526fe6
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20c], eax
mov dword [ebp - 4], 0x77
mov dword [ebp - 4], 0x78
mov dword [ebp - 4], 0x77
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x5260b6
jmp 0x526fdd
mov dword [ebp - 4], 0xe
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x204], eax
mov dword [ebp - 4], 0x79
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0x68]
call fcn.00406220
mov al, byte [ebp - 0x100]
test al, al
je 0x526158
xor eax, eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x4c]
push eax
push eax
call fcn.004e0ad0
mov edx, dword [ebp - 0x18]
test edx, edx
jne 0x526152
mov edx, dword [ebp + 0x28]
test edx, edx
jle 0x526152
mov edx, dword [ebp + 0x28]
cmp edx, eax
jge 0x526152
mov eax, edx
add dword [0x9caef4], eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x4c]
test edx, edx
je 0x527319
mov al, byte [ebp - 0x28]
test al, al
je 0x52617f
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
push eax
call fcn.0052d090
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x4c]
lea ecx, [edx + 0x62c]
mov eax, dword [edx + 0x62c]
call dword [eax + 8]
movzx eax, al
test eax, eax
jne 0x5263ec
xor eax, eax
mov ecx, dword [ebp - 0x14]
push eax
push eax
push 1
call fcn.0052da98
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x4c]
lea edi, [edx + 0x1b8]
fld qword [eax + 0x760]
add esp, 0xfffffff4
mov ecx, edi
fstp qword [esp]
mov byte [esp + 8], 0
call fcn.00669bb0
mov al, byte [ebp + 0x20]
test al, al
je 0x5263be
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2b0]
test edx, edx
je 0x5262b3
mov eax, dword [edx + 0xa624]
cmp eax, 1
je 0x5261fb
cmp eax, 2
jne 0x5262a4
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x4c]
lea ecx, [edx + 0x2fc]
mov ebx, dword [edx + 0x2fc]
call dword [ebx + 8]
movzx eax, al
test eax, eax
je 0x526225
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2b0]
jmp 0x5262a4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x4c]
call fcn.005d4c24
movzx eax, al
test eax, eax
je 0x526242
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2b0]
jmp 0x5262a4
mov dword [ebp - 0x54], 0
mov dword [ebp - 4], 0x7a
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x52707b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x4c]
push eax
call fcn.005d2e94
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x4c]
call fcn.005d46b4
mov dword [ebp - 4], 0xe
mov ecx, dword [ebp - 0x54]
test ecx, ecx
je 0x52706d
je 0x52629b
push 1
call fcn.00487bb0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2b0]
jmp 0x5262a4
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2b0]
mov eax, dword [edx + 0xa624]
cmp eax, 5
je 0x527031
mov eax, dword [0x9ee004]
test eax, eax
jne 0x5262d3
mov edx, dword [ebp - 0x14]
mov esi, dword [edx + 0x4c]
mov edi, dword [esi + 0x770]
xor eax, eax
cmp edi, 2
sete al
mov byte [edx + 0x14], al
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 4], 0x82
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 4], 0x83
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 4], 0x84
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
je 0x527207
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1d4], eax
mov dword [ebp - 4], 0x85
mov dword [ebp - 4], 0x86
mov dword [ebp - 4], 0x85
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x18]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
cmp eax, edx
jne 0x526378
jmp 0x5271fe
xor ebx, ebx
lea edx, [ebx + ebx]
add edx, edx
sub edx, ebx
mov eax, dword [ebp - 0x14]
mov al, byte [eax + edx*8 + 0x1c5]
cmp al, 2
jg 0x52726f
cmp al, 1
je 0x52726f
inc ebx
cmp ebx, 8
jl 0x5263c0
jmp 0x52724f
mov ebx, dword [ebp - 0x14]
mov esi, dword [ebx + 0x4c]
lea ebx, [esi + 0x62c]
mov eax, dword [esi + 0x62c]
mov ecx, ebx
call dword [eax + 8]
movzx eax, al
test eax, eax
je 0x52641d
mov eax, dword [esi + 0x62c]
mov ecx, ebx
call dword [eax + 0xc]
mov eax, dword [eax + 4]
mov dword [ebp - 0x2c], eax
jmp 0x526422
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x4c]
lea ecx, [eax + 0x50]
mov dword [ebp - 0x28], ecx
mov ebx, dword [ebp - 0x2c]
push dword [edx + 0x76c]
push ebx
call fcn.00622c10
xor esi, esi
mov eax, dword [ebp - 0x2c]
test eax, eax
jle 0x527304
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx + 0x4c]
lea ecx, [ebx + 0x62c]
mov dword [ebp - 0x24], ecx
mov eax, dword [ebx + 0x62c]
call dword [eax + 8]
movzx eax, al
test eax, eax
je 0x5264a7
mov eax, dword [ebx + 0x62c]
mov ecx, dword [ebp - 0x24]
call dword [eax + 0xc]
mov eax, dword [eax + 4]
dec eax
mov edi, esi
sar edi, 0x1f
xor edi, 0xffffffff
and edi, esi
mov edx, edi
sub edx, eax
sub eax, edi
sar eax, 0x1f
and edx, eax
sub edi, edx
mov dword [ebp - 0x20], edi
mov ebx, dword [ebx + 0x62c]
mov ecx, dword [ebp - 0x24]
call dword [ebx + 0xc]
mov edx, edi
mov eax, dword [eax + edx*8 + 8]
jmp 0x5264a9
xor eax, eax
push eax
mov ecx, dword [ebp - 0x28]
push esi
call fcn.0062088c
inc esi
mov eax, dword [ebp - 0x2c]
cmp esi, eax
jl 0x52644a
jmp 0x527304
lea ecx, [ebp - 0xfc]
call fcn.0041cbf8
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.0041cbf8
mov dword [ebp - 0xf8], 0
mov dword [ebp - 4], 0x10
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x7f4]
cmp eax, 4
je 0x527d8e
cmp eax, 5
je 0x526a7e
cmp eax, 3
jne 0x5265f3
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0xdc]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 0x23
lea ecx, [ebp - 0xdc]
lea eax, [ebp - 0xcc]
push 0
push eax
call fcn.004e5490
mov dword [ebp - 4], 0x24
lea eax, [ebp - 0xfc]
push dword [ebp - 0xcc]
push 0xa15f80
push eax
call fcn.00406768
add esp, 0xc
mov dword [ebp - 4], 0x23
lea ecx, [ebp - 0xcc]
call fcn.00406220
mov dword [ebp - 4], 0x10
lea eax, [ebp - 0xdc]
mov dword [ebp - 0x41c], eax
mov dword [ebp - 4], 0x25
mov dword [ebp - 4], 0x10
mov eax, dword [ebp - 0xd8]
mov edx, dword [ebp - 0xd4]
cmp eax, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
je 0x527458
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x414], eax
mov dword [ebp - 4], 0x26
mov dword [ebp - 4], 0x27
mov dword [ebp - 4], 0x26
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x20]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
cmp eax, edx
jne 0x5265ad
jmp 0x52744f
cmp eax, 2
jne 0x5266dd
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0xf0]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0xf0]
lea eax, [ebp - 0xe0]
push 0
push eax
call fcn.004e5490
mov dword [ebp - 4], 0x12
lea eax, [ebp - 0xfc]
push dword [ebp - 0xe0]
push 0xa15fe0
push eax
call fcn.00406768
add esp, 0xc
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0xe0]
call fcn.00406220
mov dword [ebp - 4], 0x10
lea eax, [ebp - 0xf0]
mov dword [ebp - 0x48c], eax
mov dword [ebp - 4], 0x13
mov dword [ebp - 4], 0x10
mov eax, dword [ebp - 0xec]
mov edx, dword [ebp - 0xe8]
cmp eax, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
je 0x5277dd
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x484], eax
mov dword [ebp - 4], 0x14
mov dword [ebp - 4], 0x15
mov dword [ebp - 4], 0x14
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x20]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
cmp eax, edx
jne 0x526697
jmp 0x5277d4
mov al, byte [0x9caf1c]
test al, al
je 0x5266ed
mov al, 1
mov byte [ebp - 0x20], al
jmp 0x5266f2
xor al, al
mov byte [ebp - 0x20], al
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0xa0]
push eax
call fcn.004e4108
mov dword [ebp - 4], 0x59
mov al, byte [ebp - 0x20]
test al, al
je 0x526719
mov eax, 3
jmp 0x52672b
lea ecx, [ebp - 0x10c]
lea eax, [ebp - 0xa0]
push eax
call fcn.005662d4
cmp eax, 5
je 0x527d87
cmp eax, 4
je 0x527c01
cmp eax, 2
je 0x526a03
cmp eax, 3
jne 0x526784
lea edx, [ebp - 0x1a8]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
push eax
push dword [ebp + 0xc]
push edx
call fcn.00528208
movzx esi, al
xor ebx, ebx
test esi, esi
mov al, byte [0x9ec1bc]
sete bl
test al, al
je 0x526a1c
mov byte [0x9caf1c], 1
jmp 0x526a1c
cmp eax, 1
jne 0x5268c8
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.00406220
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x2a4], eax
mov dword [ebp - 4], 0x60
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x29c], eax
mov dword [ebp - 4], 0x61
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x294], eax
mov dword [ebp - 4], 0x62
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x28c], eax
mov dword [ebp - 4], 0x63
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
je 0x527b62
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x284], eax
mov dword [ebp - 4], 0x64
mov dword [ebp - 4], 0x65
mov dword [ebp - 4], 0x64
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x18]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
cmp eax, edx
jne 0x526882
jmp 0x527b59
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.00406220
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x2cc], eax
mov dword [ebp - 4], 0x5a
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x2c4], eax
mov dword [ebp - 4], 0x5b
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x2bc], eax
mov dword [ebp - 4], 0x5c
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 4], 0x5d
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
je 0x527bb6
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2ac], eax
mov dword [ebp - 4], 0x5e
mov dword [ebp - 4], 0x5f
mov dword [ebp - 4], 0x5e
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x18]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
cmp eax, edx
jne 0x5269bd
jmp 0x527bad
lea eax, [ebp - 0x1a8]
mov ecx, dword [ebp - 0x14]
push eax
call fcn.0052bf74
movzx eax, al
xor ebx, ebx
test eax, eax
sete bl
xor al, al
mov byte [ebp - 0x20], al
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.00406220
test ebx, ebx
jne 0x5266f2
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x254], eax
mov dword [ebp - 4], 0x6c
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
jmp 0x525e40
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0xc8]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 0x35
lea ecx, [ebp - 0xc8]
lea eax, [ebp - 0xb8]
push 0
push eax
call fcn.004e5490
mov dword [ebp - 4], 0x36
lea eax, [ebp - 0xfc]
push dword [ebp - 0xb8]
push 0xa15f20
push eax
call fcn.00406768
add esp, 0xc
mov dword [ebp - 4], 0x35
lea ecx, [ebp - 0xb8]
call fcn.00406220
mov dword [ebp - 4], 0x10
lea eax, [ebp - 0xc8]
mov dword [ebp - 0x3ac], eax
mov dword [ebp - 4], 0x37
mov dword [ebp - 4], 0x10
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc0]
cmp eax, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
je 0x526b5f
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x3a4], eax
mov dword [ebp - 4], 0x38
mov dword [ebp - 4], 0x39
mov dword [ebp - 4], 0x38
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x20]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
cmp eax, edx
jne 0x526b15
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x20], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
lea ecx, [ebp - 0x398]
lea edx, [ebp - 0xfc]
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
push edx
call fcn.0040618c
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x394], 2
mov dword [ebp - 4], 0x3a
lea edx, [ebp - 0x398]
mov eax, dword [ebp - 0x394]
and eax, 0xf
or eax, 0x30
mov ecx, dword [ebp - 0x39c]
push eax
push edx
call fcn.0043ec3c
xor ebx, ebx
cmp eax, 3
sete bl
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x398]
call fcn.00406220
test ebx, ebx
je 0x526d13
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x364], eax
mov dword [ebp - 4], 0x41
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x35c], eax
mov dword [ebp - 4], 0x42
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x354], eax
mov dword [ebp - 4], 0x43
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x34c], eax
mov dword [ebp - 4], 0x44
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x526e90
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x344], eax
mov dword [ebp - 4], 0x45
mov dword [ebp - 4], 0x46
mov dword [ebp - 4], 0x45
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x526ccd
jmp 0x526e87
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x38c], eax
mov dword [ebp - 4], 0x3b
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x384], eax
mov dword [ebp - 4], 0x3c
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x37c], eax
mov dword [ebp - 4], 0x3d
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x374], eax
mov dword [ebp - 4], 0x3e
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x526e3c
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x36c], eax
mov dword [ebp - 4], 0x3f
mov dword [ebp - 4], 0x40
mov dword [ebp - 4], 0x3f
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x526df2
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 4
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 3
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
lea ecx, [ebp - 0x1a8]
push 0x9d7710
call fcn.004e2d98
lea eax, [ebp - 0x128]
mov ecx, dword [ebp + 8]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0x128]
push eax
call fcn.004e3380
mov dword [ebp - 4], 2
lea eax, [ebp - 0x128]
mov dword [ebp - 0x49c], eax
mov dword [ebp - 4], 9
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x124]
mov edx, dword [ebp - 0x120]
cmp eax, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
je 0x526f94
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x494], eax
mov dword [ebp - 4], 0xa
mov dword [ebp - 4], 0xb
mov dword [ebp - 4], 0xa
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x24]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x24]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
cmp eax, edx
jne 0x526f4a
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x24], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
jmp 0x525d6e
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x24], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
jmp 0x525f2c
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 4
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x4c]
lea ecx, [edx + 0x40c]
mov ebx, dword [edx + 0x40c]
call dword [ebx + 8]
movzx eax, al
test eax, eax
jne 0x5262b3
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x2b0]
mov ecx, dword [edx + 0x4c]
push dword [eax + 0xa664]
call fcn.005d2d90
jmp 0x5262b3
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2b0]
jmp 0x5262a4
mov dword [ebp - 0x50], 0
push 0x2c
call fcn.00898760
mov dword [ebp - 0x1c], eax
add esp, 4
test eax, eax
mov dword [ebp - 0x4c], eax
je 0x5271f4
mov dword [ebp - 0x50], 1
mov dword [ebp - 4], 0x7b
add esp, 0xfffffff4
mov ecx, esp
push 0xa15da4
call fcn.004061ac
lea ecx, [esp + 8]
call fcn.0041cbf8
mov byte [esp + 4], 1
mov ecx, dword [ebp - 0x1c]
call fcn.005659f8
mov dword [ebp - 0x50], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x54], eax
mov dword [ebp - 4], 0x7a
lea ecx, [ebp - 0x40]
mov dword [eax + 0x18], 0x3f800000
call fcn.0041cbf8
mov dword [ebp - 4], 0x7c
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0x64]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 0x7d
lea ecx, [ebp - 0x64]
lea eax, [ebp - 0x3c]
push eax
call fcn.004e4108
mov dword [ebp - 4], 0x7e
lea eax, [ebp - 0x40]
push dword [ebp - 0x3c]
push 0xa0947c
push eax
call fcn.00406768
add esp, 0xc
mov dword [ebp - 4], 0x7d
lea ecx, [ebp - 0x3c]
call fcn.00406220
mov dword [ebp - 4], 0x7c
lea eax, [ebp - 0x64]
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 4], 0x7f
mov dword [ebp - 4], 0x7c
mov eax, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
cmp eax, edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], edx
je 0x5271b8
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1f4], eax
mov dword [ebp - 4], 0x80
mov dword [ebp - 4], 0x81
mov dword [ebp - 4], 0x80
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x28]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x28]
add eax, 0x10
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x28], eax
cmp eax, edx
jne 0x527171
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x28], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
push 0xa160c0
push 1
push 0
push 0
push dword [ebp - 0x40]
call fcn.00565d60
mov dword [ebp - 4], 0x7a
lea ecx, [ebp - 0x40]
call fcn.00406220
jmp 0x52625b
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x5270d4
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
xor eax, eax
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x4c]
test eax, eax
je 0x527275
add eax, 0x554
mov esi, eax
mov ecx, 0x36
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x4c]
jmp 0x527275
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x4c]
xor esi, esi
mov edx, dword [eax + 0x76c]
mov ebx, edx
sar ebx, 2
shr ebx, 0x1d
add ebx, edx
sar ebx, 3
xor dl, dl
xor ecx, ecx
mov edi, dword [ebp - 0x14]
mov al, byte [edi + 0x1c5]
test al, al
jne 0x5272a9
mov dl, 1
mov dword [edi + 0x1b8], esi
mov dword [edi + 0x1bc], ebx
add esi, ebx
inc ecx
cmp ecx, 8
jge 0x5272d1
lea edi, [ecx + ecx]
add edi, edi
sub edi, ecx
add edi, edi
add edi, edi
add edi, edi
add edi, dword [ebp - 0x14]
mov al, byte [edi + 0x1c5]
test al, al
jne 0x5272a9
test ecx, ecx
je 0x52729b
jmp 0x52729d
test dl, dl
je 0x5261d6
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x290]
mov eax, dword [ebx + 0x4c]
mov dword [ebx + 0x1b8], edx
mov ecx, dword [eax + 0x76c]
add ecx, dword [ebx + 0x294]
sub ecx, edx
mov dword [ebx + 0x1bc], ecx
jmp 0x5261d6
mov ecx, dword [ebp - 0x14]
call fcn.00523900
mov ecx, dword [ebp - 0x14]
call fcn.0052d870
jmp 0x526199
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x1cc], eax
mov dword [ebp - 4], 0x87
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 4], 0x88
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 4], 0x89
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x527404
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1b4], eax
mov dword [ebp - 4], 0x8a
mov dword [ebp - 4], 0x8b
mov dword [ebp - 4], 0x8a
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x5273ba
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 1
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x20], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
lea ecx, [ebp - 0x408]
lea edx, [ebp - 0xfc]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
push edx
call fcn.0040618c
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x40c], eax
mov dword [ebp - 0x404], 2
mov dword [ebp - 4], 0x28
lea edx, [ebp - 0x408]
mov eax, dword [ebp - 0x404]
and eax, 0xf
or eax, 0x30
mov ecx, dword [ebp - 0x40c]
push eax
push edx
call fcn.0043ec3c
xor ebx, ebx
cmp eax, 3
sete bl
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x408]
call fcn.00406220
test ebx, ebx
je 0x52760c
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x3d4], eax
mov dword [ebp - 4], 0x2f
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x3cc], eax
mov dword [ebp - 4], 0x30
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 4], 0x31
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 4], 0x32
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x527789
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x3b4], eax
mov dword [ebp - 4], 0x33
mov dword [ebp - 4], 0x34
mov dword [ebp - 4], 0x33
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x5275c6
jmp 0x527780
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x3fc], eax
mov dword [ebp - 4], 0x29
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x3f4], eax
mov dword [ebp - 4], 0x2a
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 4], 0x2b
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x3e4], eax
mov dword [ebp - 4], 0x2c
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x527735
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 4], 0x2d
mov dword [ebp - 4], 0x2e
mov dword [ebp - 4], 0x2d
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x5276eb
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 4
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 3
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x20], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
lea ecx, [ebp - 0x478]
lea edx, [ebp - 0xfc]
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], eax
push edx
call fcn.0040618c
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x47c], eax
mov dword [ebp - 0x474], 2
mov dword [ebp - 4], 0x16
lea edx, [ebp - 0x478]
mov eax, dword [ebp - 0x474]
and eax, 0xf
or eax, 0x30
mov ecx, dword [ebp - 0x47c]
push eax
push edx
call fcn.0043ec3c
xor ebx, ebx
cmp eax, 3
sete bl
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x478]
call fcn.00406220
test ebx, ebx
je 0x527991
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x444], eax
mov dword [ebp - 4], 0x1d
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 4], 0x1e
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x434], eax
mov dword [ebp - 4], 0x1f
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x42c], eax
mov dword [ebp - 4], 0x20
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x527b0e
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x424], eax
mov dword [ebp - 4], 0x21
mov dword [ebp - 4], 0x22
mov dword [ebp - 4], 0x21
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x52794b
jmp 0x527b05
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x46c], eax
mov dword [ebp - 4], 0x17
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x464], eax
mov dword [ebp - 4], 0x18
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x45c], eax
mov dword [ebp - 4], 0x19
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x454], eax
mov dword [ebp - 4], 0x1a
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x527aba
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x44c], eax
mov dword [ebp - 4], 0x1b
mov dword [ebp - 4], 0x1c
mov dword [ebp - 4], 0x1b
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x527a70
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 4
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 3
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 1
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 1
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.00406220
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x27c], eax
mov dword [ebp - 4], 0x66
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x274], eax
mov dword [ebp - 4], 0x67
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x26c], eax
mov dword [ebp - 4], 0x68
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x264], eax
mov dword [ebp - 4], 0x69
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
je 0x527d3c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 4], 0x6a
mov dword [ebp - 4], 0x6b
mov dword [ebp - 4], 0x6a
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x18]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
cmp eax, edx
jne 0x527cf2
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 4
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
xor ebx, ebx
jmp 0x526a1c
lea ecx, [ebp - 0x1a8]
lea eax, [ebp - 0xb4]
push eax
call fcn.004e4df4
mov dword [ebp - 4], 0x47
lea ecx, [ebp - 0xb4]
lea eax, [ebp - 0xa4]
push 0
push eax
call fcn.004e5490
mov dword [ebp - 4], 0x48
lea eax, [ebp - 0xfc]
push dword [ebp - 0xa4]
push 0xa15ec0
push eax
call fcn.00406768
add esp, 0xc
mov dword [ebp - 4], 0x47
lea ecx, [ebp - 0xa4]
call fcn.00406220
mov dword [ebp - 4], 0x10
lea eax, [ebp - 0xb4]
mov dword [ebp - 0x33c], eax
mov dword [ebp - 4], 0x49
mov dword [ebp - 4], 0x10
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xac]
cmp eax, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
je 0x527e6f
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x334], eax
mov dword [ebp - 4], 0x4a
mov dword [ebp - 4], 0x4b
mov dword [ebp - 4], 0x4a
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x20]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
cmp eax, edx
jne 0x527e25
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x20], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
lea ecx, [ebp - 0x328]
lea edx, [ebp - 0xfc]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
push edx
call fcn.0040618c
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x324], 2
mov dword [ebp - 4], 0x4c
lea edx, [ebp - 0x328]
mov eax, dword [ebp - 0x324]
and eax, 0xf
or eax, 0x30
mov ecx, dword [ebp - 0x32c]
push eax
push edx
call fcn.0043ec3c
xor ebx, ebx
cmp eax, 3
sete bl
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x328]
call fcn.00406220
test ebx, ebx
je 0x528023
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x2f4], eax
mov dword [ebp - 4], 0x53
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 4], 0x54
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x2e4], eax
mov dword [ebp - 4], 0x55
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x2dc], eax
mov dword [ebp - 4], 0x56
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x5281a0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 4], 0x57
mov dword [ebp - 4], 0x58
mov dword [ebp - 4], 0x57
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x527fdd
jmp 0x528197
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x31c], eax
mov dword [ebp - 4], 0x4d
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xf4]
call fcn.00406220
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xfc]
call fcn.00406220
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x314], eax
mov dword [ebp - 4], 0x4e
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x10c]
call fcn.00406220
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x110]
call fcn.00406220
mov dword [ebp - 4], 2
lea eax, [ebp - 0x118]
mov dword [ebp - 0x30c], eax
mov dword [ebp - 4], 0x4f
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x114]
call fcn.00406220
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x304], eax
mov dword [ebp - 4], 0x50
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
cmp eax, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
je 0x52814c
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2fc], eax
mov dword [ebp - 4], 0x51
mov dword [ebp - 4], 0x52
mov dword [ebp - 4], 0x51
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
cmp eax, edx
jne 0x528102
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 4
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
push eax
call fcn.00888fb0
pop ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b0]
call fcn.00406220
mov eax, 2
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
mov eax, dword [ebp - 0x18]
test eax, eax
jle 0x525e40
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x525e40
mov al, 1
jmp 0x525e15