Function at 0x445ea0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x507a82
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x9a0
push ebx
xor eax, eax
mov dword [ebp - 0x14], 0
push esi
push edi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x70], eax
sub esp, 0x18
mov dword [ebp - 4], 7
lea eax, [ebp + 8]
mov ecx, esp
push eax
call fcn.00466660
lea eax, [ebp - 0x580]
mov ecx, 0x5183b0
push eax
call fcn.00445e30
push eax
lea ecx, [ebp + 8]
call fcn.004664e0
lea ecx, [ebp - 0x580]
call fcn.00403260
mov ecx, 0x5360f0
call fcn.00463e50
test al, al
je 0x448a07
mov ecx, 0x5360f0
call fcn.00463e80
test al, al
jne 0x448a07
lea eax, [ebp - 0x47c]
mov ecx, 0x5360f0
push eax
call fcn.00463ce0
lea eax, [ebp - 0x5b0]
mov ecx, 0x5360f0
push eax
call fcn.00463c70
lea eax, [ebp - 0x5b0]
push eax
lea ecx, [ebp - 0x47c]
call fcn.00467b90
test al, al
jne 0x448a07
mov ebx, dword [ebp - 0xdc]
lea ecx, [ebp - 0x47c]
call fcn.004633b0
lea ecx, [ebp - 0x1a5]
mov dword [ebp - 0x1a5], 0x82b48e85
mov esi, eax
mov dword [ebp - 0x1a1], 0x8a838c
mov byte [ebp - 0x19d], 1
call fcn.0040c460
push eax
mov ecx, esi
call fcn.0046a720
lea ecx, [ebp - 0x580]
push ecx
mov ecx, eax
call fcn.0046a860
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1ca]
mov dword [ebp - 0x1ca], 0x81b48e85
mov dword [ebp - 0x1c6], 0x83849c8c
mov word [ebp - 0x1c2], 0x100
call fcn.0040fa20
push eax
mov ecx, esi
call fcn.0046a720
lea ecx, [ebp - 0x620]
push ecx
mov ecx, eax
call fcn.0046a860
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x17b]
mov dword [ebp - 0x17b], 0x8bb48e85
mov dword [ebp - 0x177], 0x1008188
call fcn.00411100
push eax
mov ecx, esi
call fcn.0046a720
lea ecx, [ebp - 0x43c]
push ecx
mov ecx, eax
call fcn.0046a860
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x173]
mov dword [ebp - 0x173], 0x99b48e85
mov dword [ebp - 0x16f], 0x100829f
call fcn.00411100
push eax
mov ecx, esi
call fcn.0046a720
lea ecx, [ebp - 0x568]
push ecx
mov ecx, eax
call fcn.0046a860
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x3d]
movaps xmm0, xmmword [0x525c30]
movups xmmword [ebp - 0x3d], xmm0
mov dword [ebp - 0x2d], 0x82888d
mov byte [ebp - 0x29], 1
call fcn.0040fae0
push eax
mov ecx, esi
call fcn.0046a720
mov ecx, eax
call fcn.0046a990
movaps xmm0, xmmword [0x5264a0]
lea ecx, [ebp - 0x3e]
mov byte [ebp - 0x44], al
movups xmmword [ebp - 0x3e], xmm0
mov dword [ebp - 0x2e], 0x8e9e968c
mov word [ebp - 0x2a], 0x100
call fcn.0040fb70
push eax
mov ecx, esi
call fcn.0046a720
mov ecx, eax
call fcn.0046a990
mov byte [ebp - 0x46], al
movaps xmm0, xmmword [0x526010]
lea ecx, [ebp - 0x3a]
movups xmmword [ebp - 0x3a], xmm0
mov word [ebp - 0x2a], 0x100
call fcn.0040f9c0
push eax
mov ecx, esi
call fcn.0046a720
mov ecx, eax
call fcn.0046a990
mov byte [ebp - 0x45], al
lea ecx, [ebp - 0x43c]
lea eax, [ebp - 0x4c8]
push eax
call fcn.004661b0
lea ecx, [ebp - 0x43c]
mov edi, dword [eax]
lea eax, [ebp - 0x550]
push eax
call fcn.00466190
lea ecx, [ebp - 0x43c]
mov esi, dword [eax]
lea eax, [ebp - 0x54c]
push eax
call fcn.004661b0
push edi
push esi
mov edx, 0x4e292e
lea ecx, [ebp - 0x300]
push dword [eax]
call fcn.0046b110
add esp, 0xc
mov word [ebp - 0x1f], 0xc9
lea ecx, [ebp - 0x1f]
mov byte [ebp - 0x1d], 1
call fcn.00463990
lea ecx, [ebp - 0x43c]
call fcn.004033a0
lea ecx, [ebp - 0x1f]
push ecx
push eax
call fcn.004dee20
add esp, 8
test eax, eax
je 0x446258
push ebx
lea ecx, [ebp - 0x248]
call fcn.004033f0
push 0
push 0x5204b8
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0xc
call fcn.00403410
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x49]
mov word [ebp - 0x49], 0xc9
mov byte [ebp - 0x47], 1
call fcn.00463990
push dword [ebp - 0x300]
lea ecx, [ebp - 0x2b8]
call fcn.004033f0
lea ecx, [ebp - 0x49]
mov byte [ebp - 4], 0xe
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4461d4
sub ecx, edx
lea eax, [ebp - 0x49]
push ecx
push eax
lea ecx, [ebp - 0x2b8]
call fcn.00403410
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0xf
push eax
lea edx, [ebp - 0x2b8]
lea ecx, [ebp - 0x43c]
call fcn.0040d2e0
add esp, 4
lea ecx, [ebp - 0x2b8]
call fcn.00403260
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0xb
call fcn.00403260
lea ecx, [ebp - 0x1f]
mov word [ebp - 0x1f], 0xc9
mov byte [ebp - 0x1d], 1
call fcn.00463990
lea ecx, [ebp - 0x43c]
call fcn.004033a0
lea ecx, [ebp - 0x1f]
push ecx
push eax
call fcn.004dee20
add esp, 8
test eax, eax
jne 0x446181
sub esp, 0x18
mov word [ebp - 0xc3], 0xc5
lea ecx, [ebp - 0xc3]
mov byte [ebp - 0xc1], 1
xor bl, bl
mov dword [ebp - 0x18], esp
mov esi, esp
call fcn.0040afc0
push eax
mov ecx, esi
call fcn.00403300
sub esp, 0x18
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x43c]
mov ecx, esp
push eax
call fcn.00466660
lea ecx, [ebp - 0x2c4]
mov byte [ebp - 4], 0xb
call fcn.0040cfe0
add esp, 0x30
lea ecx, [ebp - 0x2c4]
mov byte [ebp - 4], 0x11
xor esi, esi
call fcn.004652a0
test eax, eax
je 0x4462ef
push esi
lea ecx, [ebp - 0x2c4]
call fcn.00465280
lea edx, [ebp + 8]
mov ecx, eax
call fcn.0046a6f0
test al, al
jne 0x4462ed
lea ecx, [ebp - 0x2c4]
inc esi
call fcn.004652a0
cmp esi, eax
jb 0x4462c1
jmp 0x4462ef
mov bl, 1
mov ecx, dword [ebp - 0x2c0]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x2c4]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x446316
test bl, bl
je 0x4489a1
sub esp, 0x18
mov word [ebp - 0xae], 0xc5
lea ecx, [ebp - 0xae]
mov byte [ebp - 0xac], 1
xor bl, bl
mov dword [ebp - 0x18], esp
mov esi, esp
call fcn.0040afc0
push eax
mov ecx, esi
call fcn.00403300
sub esp, 0x18
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x620]
mov ecx, esp
push eax
call fcn.00466660
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0x11
call fcn.0040cfe0
add esp, 0x30
xor ecx, ecx
mov byte [ebp - 4], 0x13
mov edi, dword [ebp - 0x2f8]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x2fc]
mov dword [ebp - 0x24], ecx
mov ecx, edi
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4474ad
nop word [eax + eax]
mov edi, dword [ebp - 0x24]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
lea eax, [edi + edi*2]
lea eax, [esi + eax*8]
push eax
call fcn.00466660
sub esp, 0x10
mov byte [ebp - 4], 0x14
lea eax, [ebp + 0x20]
mov ecx, esp
push eax
call fcn.00464160
lea ecx, [ebp - 0x360]
mov byte [ebp - 4], 0x13
call fcn.00414c40
add esp, 0x28
xor edx, edx
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x360]
call fcn.0046a950
test al, al
je 0x447470
movaps xmm0, xmmword [0x525ef0]
lea ecx, [ebp - 0x3c]
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x2c], 0x100899c
call fcn.00463660
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x360]
call fcn.0046a720
lea edx, [ebp - 0x41]
mov ecx, eax
call fcn.0047a330
movaps xmm0, xmmword [str.database_disk_image_is_malformed]
lea ecx, [ebp - 0x3e]
movups xmmword [ebp - 0x3e], xmm0
mov dword [ebp - 0x2e], 0x8f9f8896
mov word [ebp - 0x2a], 0x100
call fcn.00463570
lea eax, [ebp - 0x3e]
push eax
lea ecx, [ebp - 0x360]
call fcn.0046a720
lea edx, [ebp - 0x42]
mov ecx, eax
call fcn.0047a330
movaps xmm0, xmmword [0x5261c0]
lea ecx, [ebp - 0x3c]
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x2c], 0x100838b
call fcn.00463660
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x360]
call fcn.0046a720
lea edx, [ebp - 0x43]
mov ecx, eax
call fcn.0047a330
lea ecx, [ebp - 0x16b]
mov dword [ebp - 0x16b], 0x87998b84
mov dword [ebp - 0x167], 0x9d808ab2
mov dword [ebp - 0x163], 0x879d9b90
mov word [ebp - 0x15f], 0x100
call fcn.00463690
lea eax, [ebp - 0x16b]
push eax
lea ecx, [ebp - 0x360]
call fcn.0046a720
lea ecx, [ebp - 0x248]
push ecx
mov ecx, eax
call fcn.0046a860
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x4c]
mov word [ebp - 0x4c], 0xc5
mov byte [ebp - 0x4a], 1
call fcn.00463990
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x58], esi
mov ecx, esi
push dword [ebp - 0x58]
call fcn.004033f0
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x17
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x446520
sub ecx, edx
lea eax, [ebp - 0x4c]
push ecx
push eax
mov ecx, esi
call fcn.00403410
sub esp, 0x18
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x248]
mov ecx, esp
push eax
call fcn.00466660
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 0x16
call fcn.0040cfe0
add esp, 0x30
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x193]
mov byte [ebp - 0xd], 0
mov dword [ebp - 0x193], 0x87998b84
mov dword [ebp - 0x18f], 0x85808db2
mov dword [ebp - 0x18b], 0x9d81869f
mov dword [ebp - 0x187], 0x1008590
call fcn.00463510
lea eax, [ebp - 0x193]
push eax
lea ecx, [ebp - 0x360]
call fcn.0046a720
lea ecx, [ebp - 0x2b8]
push ecx
mov ecx, eax
call fcn.0046a860
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x2a8], 0
je 0x446697
sub esp, 0x18
mov word [ebp - 0xab], 0xc5
lea ecx, [ebp - 0xab]
mov byte [ebp - 0xa9], 1
mov esi, esp
mov dword [ebp - 0x1c], esp
call fcn.0040afc0
push eax
mov ecx, esi
call fcn.00403300
sub esp, 0x18
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x2b8]
mov ecx, esp
push eax
call fcn.00466660
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x1a
call fcn.0040cfe0
mov esi, dword [ebp - 0x34c]
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x348]
add esp, 0x30
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x446682
xor edi, edi
lea eax, [ebp + 8]
lea ecx, [edi + esi]
push eax
call fcn.0046de00
test al, al
jne 0x44667e
mov ecx, dword [ebp - 0x348]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x34c]
add edi, 0x18
inc dword [ebp - 0x18]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jb 0x446642
jmp 0x446682
mov byte [ebp - 0xd], 1
lea ecx, [ebp - 0x34c]
call fcn.00468860
cmp byte [ebp - 0xd], 0
je 0x44744c
cmp dword [ebp - 0x238], 0
je 0x44744a
cmp byte [ebp - 0x41], 0
je 0x446cfa
lea ecx, [ebp + 0x30]
call fcn.00463c40
test eax, eax
je 0x4469c2
lea eax, [ebp - 0x340]
push eax
lea ecx, [ebp + 0x30]
call fcn.0046aa10
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x340]
call fcn.00463a70
lea eax, [ebp - 0x249]
push eax
lea ecx, [ebp - 0x340]
call fcn.00463a60
mov eax, dword [ebp - 0x218]
cmp byte [eax + 0xd], 0
jne 0x4469b3
test bl, bl
jne 0x4469b3
cmp byte [eax + 0x28], bl
lea esi, [eax + 0x28]
je 0x446998
mov ecx, esi
call fcn.00463c40
test eax, eax
je 0x446998
lea eax, [ebp - 0x49c]
mov ecx, esi
push eax
call fcn.00463ce0
lea eax, [ebp - 0x590]
mov ecx, esi
push eax
call fcn.00463c70
lea eax, [ebp - 0x590]
push eax
lea ecx, [ebp - 0x49c]
call fcn.00467b90
test al, al
jne 0x446998
nop
lea ecx, [ebp - 0x49c]
call fcn.004633b0
test bl, bl
jne 0x446998
lea ecx, [ebp - 0x308]
push ecx
mov ecx, eax
call fcn.0046aa10
lea eax, [ebp - 0x214]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x308]
call fcn.00463a70
lea eax, [ebp - 0x20d]
push eax
lea ecx, [ebp - 0x308]
call fcn.00463a60
mov eax, dword [ebp - 0x214]
cmp byte [eax + 0xd], bl
jne 0x446964
test bl, bl
jne 0x446964
lea esi, [eax + 0x28]
mov ecx, esi
call fcn.00463c40
test eax, eax
je 0x446949
lea eax, [ebp - 0x4ac]
mov ecx, esi
push eax
call fcn.00463ce0
lea eax, [ebp - 0x5a0]
mov ecx, esi
push eax
call fcn.00463c70
lea eax, [ebp - 0x5a0]
push eax
lea ecx, [ebp - 0x4ac]
call fcn.00467b90
test al, al
jne 0x446949
nop dword [eax + eax]
lea ecx, [ebp - 0x4ac]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x446949
push dword [ebp - 0x58]
lea ecx, [ebp - 0xa8]
call fcn.004033f0
push 0
push 0x5204b8
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x1e
call fcn.00403410
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0xec]
mov dword [ebp - 0xec], 0x8d86858d
mov dword [ebp - 0xe8], 0x1008084
call fcn.004634b0
lea eax, [ebp - 0xec]
mov ecx, esi
push eax
call fcn.0046a720
cmp byte [eax], bl
je 0x4468b7
lea ecx, [ebp - 0xce]
mov dword [ebp - 0xce], 0x8d86858d
mov dword [ebp - 0xca], 0x1008084
call fcn.004634b0
lea eax, [ebp - 0xce]
mov ecx, esi
push eax
call fcn.0046a720
push eax
lea ecx, [ebp - 0xa8]
call fcn.0046aaa0
lea ecx, [ebp - 0x5f]
mov word [ebp - 0x5f], 0xc7
mov byte [ebp - 0x5d], 1
call fcn.00463990
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x5f]
push eax
call fcn.0046a470
sub esp, 8
mov byte [ebp - 4], 0x20
lea eax, [ebp - 0x2d0]
mov byte [ebp - 0xd], 0
mov ecx, esp
push eax
call fcn.004653a0
mov cl, byte [ebp - 0xd]
mov byte [ebp - 4], 0x1f
call fcn.00414ea0
add esp, 0x24
movzx ebx, bl
test al, al
mov byte [ebp - 4], 0x1d
mov eax, 1
lea ecx, [ebp - 0xa8]
cmovne ebx, eax
call fcn.00403260
lea ecx, [ebp - 0x4ac]
call fcn.00463360
lea eax, [ebp - 0x5a0]
push eax
lea ecx, [ebp - 0x4ac]
call fcn.00467b90
test al, al
je 0x446810
lea ecx, [ebp - 0x214]
call fcn.00467b10
mov eax, dword [ebp - 0x214]
cmp byte [eax + 0xd], 0
je 0x4467b8
lea ecx, [ebp - 0x308]
mov byte [ebp - 4], 0x1c
call fcn.0041ceb0
lea ecx, [ebp - 0x49c]
call fcn.00463360
lea eax, [ebp - 0x590]
push eax
lea ecx, [ebp - 0x49c]
call fcn.00467b90
test al, al
je 0x446760
lea ecx, [ebp - 0x218]
call fcn.00467b10
mov eax, dword [ebp - 0x218]
cmp byte [eax + 0xd], 0
je 0x446705
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0x1a
call fcn.0041ceb0
test bl, bl
jne 0x446cfa
lea ecx, [ebp + 0x40]
call fcn.00463c40
test eax, eax
je 0x446cfa
lea eax, [ebp - 0x318]
push eax
lea ecx, [ebp + 0x40]
call fcn.0046aa10
lea eax, [ebp - 0x220]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [ebp - 0x318]
call fcn.00463a70
lea eax, [ebp - 0x20e]
push eax
lea ecx, [ebp - 0x318]
call fcn.00463a60
mov eax, dword [ebp - 0x220]
cmp byte [eax + 0xd], bl
jne 0x446cef
test bl, bl
jne 0x446cef
cmp byte [eax + 0x28], bl
lea esi, [eax + 0x28]
je 0x446cd4
mov ecx, esi
call fcn.00463c40
test eax, eax
je 0x446cd4
lea eax, [ebp - 0x48c]
mov ecx, esi
push eax
call fcn.00463ce0
lea eax, [ebp - 0x5c0]
mov ecx, esi
push eax
call fcn.00463c70
lea eax, [ebp - 0x5c0]
push eax
lea ecx, [ebp - 0x48c]
call fcn.00467b90
test al, al
jne 0x446cd4
mov edi, dword [ebp - 0x28]
nop dword [eax]
lea ecx, [ebp - 0x48c]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x446cd4
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0x22
call fcn.0046d8e0
or edi, 0x40
lea edx, [ebp - 0x310]
mov ecx, esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x70], edi
call fcn.0047a3b0
mov eax, dword [ebp - 0x310]
lea ecx, [ebp - 0x21c]
push 0
push dword [eax]
call fcn.00467b70
mov eax, dword [ebp - 0x21c]
cmp byte [eax + 0xd], bl
jne 0x446c97
mov edi, 1
test bl, bl
jne 0x446c94
lea esi, [eax + 0x28]
mov ecx, esi
call fcn.00463c40
test eax, eax
je 0x446c79
push esi
lea ecx, [ebp - 0x3e4]
call fcn.00467cc0
lea ecx, [ebp - 0x3e4]
call fcn.00467c80
push esi
lea ecx, [ebp - 0x518]
call fcn.00467cc0
lea ecx, [ebp - 0x518]
call fcn.00467c50
lea eax, [ebp - 0x518]
push eax
lea ecx, [ebp - 0x3e4]
call fcn.00467b90
test al, al
jne 0x446c79
lea ecx, [ebp - 0x3e4]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x446c79
push dword [ebp - 0x58]
lea ecx, [ebp - 0xa8]
call fcn.004033f0
push 0
push 0x5204b8
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x23
call fcn.00403410
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0x8d86858d
mov dword [ebp - 0xe0], 0x1008084
call fcn.004634b0
lea eax, [ebp - 0xe4]
mov ecx, esi
push eax
call fcn.0046a720
cmp byte [eax], bl
je 0x446bec
lea ecx, [ebp - 0xd6]
mov dword [ebp - 0xd6], 0x8d86858d
mov dword [ebp - 0xd2], 0x1008084
call fcn.004634b0
lea eax, [ebp - 0xd6]
mov ecx, esi
push eax
call fcn.0046a720
push eax
lea ecx, [ebp - 0xa8]
call fcn.004716c0
lea ecx, [ebp - 0x62]
mov word [ebp - 0x62], 0xc7
mov byte [ebp - 0x60], 1
call fcn.00463990
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
mov dword [ebp - 0x1c], esp
lea edx, [ebp - 0x62]
push eax
call fcn.0046a470
sub esp, 8
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x2d0]
mov byte [ebp - 0xd], 0
mov ecx, esp
push eax
call fcn.004653a0
mov cl, byte [ebp - 0xd]
mov byte [ebp - 4], 0x24
call fcn.00414ea0
add esp, 0x24
movzx ebx, bl
test al, al
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0xa8]
cmovne ebx, edi
call fcn.00403260
lea ecx, [ebp - 0x3e4]
call fcn.00463360
lea eax, [ebp - 0x518]
push eax
lea ecx, [ebp - 0x3e4]
call fcn.00467b90
test al, al
je 0x446b45
lea ecx, [ebp - 0x21c]
call fcn.00467b10
mov eax, dword [ebp - 0x21c]
cmp byte [eax + 0xd], 0
je 0x446ae3
mov edi, dword [ebp - 0x28]
and edi, 0xffffffbf
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x70], edi
call fcn.0041ceb0
lea ecx, [ebp - 0x48c]
call fcn.00463360
lea eax, [ebp - 0x5c0]
push eax
lea ecx, [ebp - 0x48c]
call fcn.00467b90
test al, al
je 0x446a80
lea ecx, [ebp - 0x220]
call fcn.00467b10
mov eax, dword [ebp - 0x220]
cmp byte [eax + 0xd], 0
je 0x446a20
lea ecx, [ebp - 0x318]
call fcn.0041ceb0
cmp byte [ebp - 0x42], 0
je 0x447103
test bl, bl
jne 0x447103
lea ecx, [ebp + 0x50]
call fcn.00463c40
test eax, eax
je 0x446efe
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 0x26
call fcn.0046d8e0
mov esi, dword [ebp - 0x28]
lea edx, [ebp - 0x320]
or esi, 0x80
lea ecx, [ebp + 0x50]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x70], esi
call fcn.0047a3b0
mov eax, dword [ebp - 0x320]
lea ecx, [ebp - 0x224]
push 0
push dword [eax]
call fcn.00467b70
mov eax, dword [ebp - 0x224]
cmp byte [eax + 0xd], bl
jne 0x446ee7
nop dword [eax]
test bl, bl
jne 0x446ee4
lea esi, [eax + 0x28]
push esi
lea ecx, [ebp - 0x3f4]
call fcn.00467cc0
lea ecx, [ebp - 0x3f4]
call fcn.00467c80
push esi
lea ecx, [ebp - 0x508]
call fcn.00467cc0
lea ecx, [ebp - 0x508]
call fcn.00467c50
lea eax, [ebp - 0x508]
push eax
lea ecx, [ebp - 0x3f4]
call fcn.00467b90
test al, al
jne 0x446ec9
lea ecx, [ebp - 0x3f4]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x446ec9
push dword [ebp - 0x58]
lea ecx, [ebp - 0xa8]
call fcn.004033f0
push 0
push 0x5204b8
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x27
call fcn.00403410
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x75]
mov dword [ebp - 0x75], 0x87989c
mov byte [ebp - 0x71], 1
call fcn.00463a30
lea eax, [ebp - 0x75]
mov ecx, esi
push eax
call fcn.0046a720
cmp byte [eax], bl
je 0x446e4c
lea ecx, [ebp - 0x7a]
mov dword [ebp - 0x7a], 0x87989c
mov byte [ebp - 0x76], 1
call fcn.00463a30
lea eax, [ebp - 0x7a]
mov ecx, esi
push eax
call fcn.0046a720
push eax
lea ecx, [ebp - 0xa8]
call fcn.004716c0
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
mov dword [ebp - 0x1c], esp
push eax
call fcn.00466660
sub esp, 0xc
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x2d0]
mov byte [ebp - 0xd], 1
mov ecx, esp
push eax
call fcn.004653a0
mov cl, byte [ebp - 0xd]
mov byte [ebp - 4], 0x28
call fcn.00414ea0
add esp, 0x24
movzx ebx, bl
test al, al
mov byte [ebp - 4], 0x26
mov eax, 1
lea ecx, [ebp - 0xa8]
cmovne ebx, eax
call fcn.00403260
lea ecx, [ebp - 0x3f4]
call fcn.00463360
lea eax, [ebp - 0x508]
push eax
lea ecx, [ebp - 0x3f4]
call fcn.00467b90
test al, al
je 0x446dc3
lea ecx, [ebp - 0x224]
call fcn.00467b10
mov eax, dword [ebp - 0x224]
cmp byte [eax + 0xd], 0
je 0x446d70
mov esi, dword [ebp - 0x28]
and esi, 0xffffff7f
lea ecx, [ebp - 0x320]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x70], esi
call fcn.0041ceb0
test bl, bl
jne 0x447103
lea ecx, [ebp + 0x60]
call fcn.00463c40
test eax, eax
je 0x447103
lea ecx, [ebp - 0x328]
mov byte [ebp - 4], 0x2a
call fcn.0046d8e0
mov esi, dword [ebp - 0x14]
lea edx, [ebp - 0x328]
or esi, 0x400000
lea ecx, [ebp + 0x60]
mov dword [ebp - 0x14], esi
call fcn.0047a3b0
mov eax, dword [ebp - 0x328]
lea ecx, [ebp - 0x228]
push 0
push dword [eax]
call fcn.00467b70
mov eax, dword [ebp - 0x228]
cmp byte [eax + 0xd], bl
jne 0x4470ed
test bl, bl
jne 0x4470ea
lea esi, [eax + 0x28]
push esi
lea ecx, [ebp - 0x404]
call fcn.00467cc0
lea ecx, [ebp - 0x404]
call fcn.00467c80
push esi
lea ecx, [ebp - 0x4f8]
call fcn.00467cc0
lea ecx, [ebp - 0x4f8]
call fcn.00467c50
lea eax, [ebp - 0x4f8]
push eax
lea ecx, [ebp - 0x404]
call fcn.00467b90
test al, al
jne 0x4470cf
nop word [eax + eax]
lea ecx, [ebp - 0x404]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x4470cf
push dword [ebp - 0x58]
lea ecx, [ebp - 0xa8]
call fcn.004033f0
push 0
push 0x5204b8
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x2b
call fcn.00403410
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x7f]
mov dword [ebp - 0x7f], 0x87989c
mov byte [ebp - 0x7b], 1
call fcn.00463a30
lea eax, [ebp - 0x7f]
mov ecx, esi
push eax
call fcn.0046a720
cmp byte [eax], bl
je 0x447052
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x84], 0x87989c
mov byte [ebp - 0x80], 1
call fcn.00463a30
lea eax, [ebp - 0x84]
mov ecx, esi
push eax
call fcn.0046a720
push eax
lea ecx, [ebp - 0xa8]
call fcn.004716c0
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
mov dword [ebp - 0x1c], esp
push eax
call fcn.00466660
sub esp, 0xc
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0x2d0]
mov byte [ebp - 0xd], 1
mov ecx, esp
push eax
call fcn.004653a0
mov cl, byte [ebp - 0xd]
mov byte [ebp - 4], 0x2c
call fcn.00414ea0
add esp, 0x24
movzx ebx, bl
test al, al
mov byte [ebp - 4], 0x2a
mov eax, 1
lea ecx, [ebp - 0xa8]
cmovne ebx, eax
call fcn.00403260
lea ecx, [ebp - 0x404]
call fcn.00463360
lea eax, [ebp - 0x4f8]
push eax
lea ecx, [ebp - 0x404]
call fcn.00467b90
test al, al
je 0x446fc0
lea ecx, [ebp - 0x228]
call fcn.00467b10
mov eax, dword [ebp - 0x228]
cmp byte [eax + 0xd], 0
je 0x446f63
mov esi, dword [ebp - 0x14]
and esi, 0xffbfffff
lea ecx, [ebp - 0x328]
mov dword [ebp - 0x14], esi
call fcn.0041ceb0
jmp 0x447106
mov esi, dword [ebp - 0x14]
cmp byte [ebp - 0x43], 0
je 0x44744c
test bl, bl
jne 0x44744c
lea ecx, [ebp + 0x70]
call fcn.00463c40
test eax, eax
je 0x44744c
lea ecx, [ebp - 0x338]
mov byte [ebp - 4], 0x2e
call fcn.0046d8e0
or esi, 0x100000
lea edx, [ebp - 0x338]
lea ecx, [ebp + 0x70]
mov dword [ebp - 0x14], esi
call fcn.0047a3b0
mov eax, dword [ebp - 0x338]
lea ecx, [ebp - 0x230]
push 0
push dword [eax]
call fcn.00467b70
mov eax, dword [ebp - 0x230]
cmp byte [eax + 0xd], bl
jne 0x447434
test bl, bl
jne 0x447431
cmp byte [eax + 0x28], bl
lea esi, [eax + 0x28]
je 0x447416
mov ecx, esi
call fcn.00463c40
test eax, eax
je 0x447416
push esi
lea ecx, [ebp - 0x424]
call fcn.00467cc0
lea ecx, [ebp - 0x424]
call fcn.00467c80
push esi
lea ecx, [ebp - 0x4d8]
call fcn.00467cc0
lea ecx, [ebp - 0x4d8]
call fcn.00467c50
lea eax, [ebp - 0x4d8]
push eax
lea ecx, [ebp - 0x424]
call fcn.00467b90
test al, al
jne 0x447416
nop dword [eax]
lea ecx, [ebp - 0x424]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x447416
lea ecx, [ebp - 0x330]
mov byte [ebp - 4], 0x2f
call fcn.0046d8e0
or dword [ebp - 0x14], 0x20000
lea edx, [ebp - 0x330]
mov ecx, esi
call fcn.0047a3b0
mov eax, dword [ebp - 0x330]
lea ecx, [ebp - 0x22c]
push 0
push dword [eax]
call fcn.00467b70
mov eax, dword [ebp - 0x22c]
cmp byte [eax + 0xd], bl
jne 0x4473db
nop dword [eax]
test bl, bl
jne 0x4473db
lea esi, [eax + 0x28]
mov ecx, esi
call fcn.00463c40
test eax, eax
je 0x4473c0
push esi
lea ecx, [ebp - 0x414]
call fcn.00467cc0
lea ecx, [ebp - 0x414]
call fcn.00467c80
push esi
lea ecx, [ebp - 0x4e8]
call fcn.00467cc0
lea ecx, [ebp - 0x4e8]
call fcn.00467c50
lea eax, [ebp - 0x4e8]
push eax
lea ecx, [ebp - 0x414]
call fcn.00467b90
test al, al
jne 0x4473c0
lea ecx, [ebp - 0x414]
call fcn.004633b0
mov esi, eax
test bl, bl
jne 0x4473c0
push dword [ebp - 0x58]
lea ecx, [ebp - 0xa8]
call fcn.004033f0
push 0
push 0x5204b8
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x30
call fcn.00403410
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x89]
mov dword [ebp - 0x89], 0x87989c
mov byte [ebp - 0x85], 1
call fcn.00463a30
lea eax, [ebp - 0x89]
mov ecx, esi
push eax
call fcn.0046a720
cmp byte [eax], bl
je 0x447343
lea ecx, [ebp - 0x8e]
mov dword [ebp - 0x8e], 0x87989c
mov byte [ebp - 0x8a], 1
call fcn.00463a30
lea eax, [ebp - 0x8e]
mov ecx, esi
push eax
call fcn.0046a720
push eax
lea ecx, [ebp - 0xa8]
call fcn.004716c0
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
mov dword [ebp - 0x1c], esp
push eax
call fcn.00466660
sub esp, 0xc
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x2d0]
mov byte [ebp - 0xd], 1
mov ecx, esp
push eax
call fcn.004653a0
mov cl, byte [ebp - 0xd]
mov byte [ebp - 4], 0x31
call fcn.00414ea0
add esp, 0x24
movzx ebx, bl
test al, al
mov byte [ebp - 4], 0x2f
mov eax, 1
lea ecx, [ebp - 0xa8]
cmovne ebx, eax
call fcn.00403260
lea ecx, [ebp - 0x414]
call fcn.00463360
lea eax, [ebp - 0x4e8]
push eax
lea ecx, [ebp - 0x414]
call fcn.00467b90
test al, al
je 0x4472a2
lea ecx, [ebp - 0x22c]
call fcn.00467b10
mov eax, dword [ebp - 0x22c]
cmp byte [eax + 0xd], 0
je 0x447240
and dword [ebp - 0x14], 0xfffdffff
lea ecx, [ebp - 0x330]
mov byte [ebp - 4], 0x2e
call fcn.0041ceb0
lea ecx, [ebp - 0x424]
call fcn.00463360
lea eax, [ebp - 0x4d8]
push eax
lea ecx, [ebp - 0x424]
call fcn.00467b90
test al, al
je 0x4471e0
lea ecx, [ebp - 0x230]
call fcn.00467b10
mov eax, dword [ebp - 0x230]
cmp byte [eax + 0xd], 0
je 0x447172
mov esi, dword [ebp - 0x14]
and esi, 0xffefffff
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x14], esi
call fcn.0041ceb0
jmp 0x44744c
mov bl, 1
lea ecx, [ebp - 0x2b8]
call fcn.00403260
lea ecx, [ebp - 0x2d0]
call fcn.00468860
lea ecx, [ebp - 0x248]
call fcn.00403260
mov edi, dword [ebp - 0x24]
lea ecx, [ebp - 0x360]
mov byte [ebp - 4], 0x13
call fcn.00464100
mov esi, dword [ebp - 0x2fc]
inc edi
mov dword [ebp - 0x24], edi
mov eax, 0x2aaaaaab
mov edi, dword [ebp - 0x2f8]
mov ecx, edi
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x24], eax
jb 0x4463a0
sub edi, esi
mov eax, 0x2aaaaaab
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4474ca
test bl, bl
je 0x448996
lea ecx, [ebp - 0x6b]
mov dword [ebp - 0x6b], 0x89938fc7
mov word [ebp - 0x67], 0x100
call fcn.004637e0
push dword [ebp - 0x58]
lea ecx, [ebp - 0x270]
call fcn.004033f0
lea ecx, [ebp - 0x6b]
mov byte [ebp - 4], 0x33
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4474f7
sub ecx, edx
lea eax, [ebp - 0x6b]
push ecx
push eax
lea ecx, [ebp - 0x270]
call fcn.00403410
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x4f]
mov word [ebp - 0x4f], 0xc7
mov byte [ebp - 0x4d], 1
call fcn.00463990
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x254], esi
mov ecx, esi
push dword [ebp - 0x254]
call fcn.004033f0
lea ecx, [ebp - 0x4f]
mov byte [ebp - 4], 0x35
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x447550
sub ecx, edx
lea eax, [ebp - 0x4f]
push ecx
push eax
mov ecx, esi
call fcn.00403410
sub esp, 0x18
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x568]
mov ecx, esp
push eax
call fcn.00466660
lea ecx, [ebp - 0x36c]
mov byte [ebp - 4], 0x34
call fcn.0040cfe0
add esp, 0x30
mov byte [ebp - 4], 0x37
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x368]
sub ecx, dword [ebp - 0x36c]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x447aae
lea ecx, [ebp - 0x36c]
call fcn.004652a0
dec eax
lea ecx, [ebp - 0x36c]
push eax
call fcn.00465280
push eax
lea ecx, [ebp - 0x270]
call fcn.004664b0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x114], 0x8e928c
mov byte [ebp - 0x110], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x3bc]
call fcn.00403300
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x270]
mov ebx, dword [ebp - 0x14]
mov edx, eax
or ebx, 1
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x119]
mov dword [ebp - 0x119], 0x829984
mov byte [ebp - 0x115], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x3d4]
call fcn.00403300
mov dword [ebp - 4], 0x39
lea ecx, [ebp - 0x270]
or ebx, 2
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x10f]
mov dword [ebp - 0x10f], 0x99899a
mov byte [ebp - 0x10b], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x608]
call fcn.00403300
mov dword [ebp - 4], 0x3a
lea ecx, [ebp - 0x270]
or ebx, 4
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x11e]
mov dword [ebp - 0x11e], 0x9f929d
mov byte [ebp - 0x11a], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x5f0]
call fcn.00403300
mov dword [ebp - 4], 0x3b
lea ecx, [ebp - 0x270]
or ebx, 8
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x123]
mov dword [ebp - 0x123], 0x88858d
mov byte [ebp - 0x11f], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x5d8]
call fcn.00403300
mov dword [ebp - 4], 0x3c
lea ecx, [ebp - 0x270]
or ebx, 0x10
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x145]
mov dword [ebp - 0x145], 0x9488858d
mov word [ebp - 0x141], 0x100
call fcn.0040c430
push eax
lea ecx, [ebp - 0x40]
call fcn.00403300
mov dword [ebp - 4], 0x3d
lea ecx, [ebp - 0x270]
or ebx, 0x20
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x128], 0x8c8499
mov byte [ebp - 0x124], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x20c]
call fcn.00403300
mov dword [ebp - 4], 0x3e
lea ecx, [ebp - 0x270]
or ebx, 0x40
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x12d]
mov dword [ebp - 0x12d], 0x8c9a83
mov byte [ebp - 0x129], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x454]
call fcn.00403300
mov dword [ebp - 4], 0x3f
lea ecx, [ebp - 0x270]
or ebx, 0x80
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0x14b]
mov dword [ebp - 0x14b], 0x8b8e9a83
mov word [ebp - 0x147], 0x100
call fcn.0040c430
push eax
lea ecx, [ebp - 0xa8]
call fcn.00403300
mov dword [ebp - 4], 0x40
lea ecx, [ebp - 0x270]
or ebx, 0x100
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0xf1]
mov dword [ebp - 0xf1], 0x9b878b
mov byte [ebp - 0xed], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x248]
call fcn.00403300
mov dword [ebp - 4], 0x41
lea ecx, [ebp - 0x270]
or ebx, 0x200
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0xf6]
mov dword [ebp - 0xf6], 0x9f8b8b
mov byte [ebp - 0xf2], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x2b8]
call fcn.00403300
mov dword [ebp - 4], 0x42
lea ecx, [ebp - 0x270]
or ebx, 0x400
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
test al, al
je 0x447954
lea ecx, [ebp - 0xfb]
mov dword [ebp - 0xfb], 0x98889f
mov byte [ebp - 0xf7], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x46c]
call fcn.00403300
or ebx, 0x800
lea ecx, [ebp - 0x270]
mov edx, eax
mov dword [ebp - 0x14], ebx
call fcn.0046af10
mov byte [ebp - 0xd], 1
test al, al
jne 0x447958
mov byte [ebp - 0xd], 0
test ebx, 0x800
je 0x447974
and ebx, 0xfffff7ff
lea ecx, [ebp - 0x46c]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test ebx, 0x400
je 0x447990
and ebx, 0xfffffbff
lea ecx, [ebp - 0x2b8]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test ebx, 0x200
je 0x4479ac
and ebx, 0xfffffdff
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test ebx, 0x100
je 0x4479c8
and ebx, 0xfffffeff
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, bl
jns 0x4479e0
and ebx, 0xffffff7f
lea ecx, [ebp - 0x454]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, 0x40
je 0x4479f6
and ebx, 0xffffffbf
lea ecx, [ebp - 0x20c]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, 0x20
je 0x447a09
and ebx, 0xffffffdf
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, 0x10
je 0x447a1f
and ebx, 0xffffffef
lea ecx, [ebp - 0x5d8]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, 8
je 0x447a35
and ebx, 0xfffffff7
lea ecx, [ebp - 0x5f0]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, 4
je 0x447a4b
and ebx, 0xfffffffb
lea ecx, [ebp - 0x608]
mov dword [ebp - 0x14], ebx
call fcn.00403260
test bl, 2
je 0x447a61
and ebx, 0xfffffffd
lea ecx, [ebp - 0x3d4]
mov dword [ebp - 0x14], ebx
call fcn.00403260
mov dword [ebp - 4], 0x37
test bl, 1
je 0x447a7e
and ebx, 0xfffffffe
lea ecx, [ebp - 0x3bc]
mov dword [ebp - 0x14], ebx
call fcn.00403260
cmp byte [ebp - 0xd], 0
je 0x447ab1
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x100], 0x8e928c
mov byte [ebp - 0xfc], 1
call fcn.0040a0c0
push eax
lea ecx, [ebp - 0x270]
call fcn.00466480
jmp 0x447ab1
mov ebx, dword [ebp - 0x14]
lea ecx, [ebp - 0x52]
mov word [ebp - 0x52], 0xc7
mov byte [ebp - 0x50], 1
call fcn.00463990
mov edx, 0x14
lea ecx, [ebp - 0x3d4]
call fcn.0040d340
mov esi, eax
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x65]
mov word [ebp - 0x65], 0xb5
mov byte [ebp - 0x63], 1
call fcn.00463990
lea eax, [ebp - 0x65]
push eax
lea edx, [ebp + 0x80]
lea ecx, [ebp - 0x3bc]
call fcn.0046a3b0
add esp, 4
push esi
push eax
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x20c]
push dword [ebp - 0x254]
call fcn.0046de30
mov esi, dword [ebp - 0x28]
or esi, 8
lea ecx, [ebp - 0x52]
mov byte [ebp - 4], 0x45
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x447b30
sub ecx, edx
lea eax, [ebp - 0x52]
push ecx
push eax
lea ecx, [ebp - 0x20c]
call fcn.00468f90
push eax
lea ecx, [ebp - 0x248]
call fcn.004032b0
or esi, 0x10
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x70], esi
lea eax, [ebp - 0x270]
mov byte [ebp - 4], 0x46
push eax
lea edx, [ebp - 0x248]
lea ecx, [ebp - 0x4c4]
call fcn.0046a5d0
add esp, 4
lea ecx, [ebp - 0x248]
call fcn.00403260
lea ecx, [ebp - 0x20c]
call fcn.00403260
lea ecx, [ebp - 0x3bc]
call fcn.00403260
lea ecx, [ebp - 0x3d4]
mov byte [ebp - 4], 0x4b
call fcn.00403260
lea ecx, [ebp - 0x10a]
mov dword [ebp - 0x10a], 0x9c9f9e81
mov dword [ebp - 0x106], 0xdfc0d49e
mov word [ebp - 0x102], 0x100
call fcn.004636f0
lea ecx, [ebp - 0x568]
call fcn.004033a0
lea ecx, [ebp - 0x10a]
push ecx
push eax
call fcn.004dee20
add esp, 8
lea ecx, [ebp - 0x4c4]
test eax, eax
setne byte [ebp - 0xdc]
call fcn.004033a0
lea ecx, [ebp - 0x568]
mov esi, eax
call fcn.004033a0
push 0x7530
push 0
push dword [ebp - 0xdc]
mov edx, esi
mov ecx, eax
call fcn.00481150
add esp, 0xc
test al, al
je 0x448975
push str.BitBlt
lea ecx, [ebp - 0x1f4]
mov dword [ebp - 0x1f4], 0x8e848ea8
mov dword [ebp - 0x1f0], 0x949fbb88
mov dword [ebp - 0x1ec], 0x86968690
mov word [ebp - 0x1e8], 0xa3
mov byte [ebp - 0x1e6], 1
call fcn.0040b2c0
mov edx, eax
lea ecx, [ebp - 0x2b8]
call fcn.0046a470
add esp, 4
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x183]
push str.BitBlt
mov dword [ebp - 0x183], 0x898c8eac
mov dword [ebp - 0x17f], 0x100bda0
call fcn.00411100
mov edx, eax
lea ecx, [ebp - 0xa8]
call fcn.0046a470
add esp, 4
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x1d7]
push str.BitBlt
mov dword [ebp - 0x1d7], 0xb9a2b9a4
mov dword [ebp - 0x1d3], 0x848e8a9d
mov dword [ebp - 0x1cf], 0xa58094
mov byte [ebp - 0x1cb], 1
call fcn.0040e5b0
mov edx, eax
lea ecx, [ebp - 0x454]
call fcn.0046a470
add esp, 4
cmp byte [ebp - 0x44], 0
mov byte [ebp - 4], 0x4e
je 0x447f65
lea ecx, [ebp - 0x1e5]
mov dword [ebp - 0x1e5], 0xada8a5a5
mov dword [ebp - 0x1e1], 0xa0bfafa1
mov dword [ebp - 0x1dd], 0xb5a7b3b5
mov word [ebp - 0x1d9], 0x100
call fcn.0040fa80
push eax
call fcn.004ec1e1
add esp, 4
test eax, eax
je 0x447f65
push eax
lea ecx, [ebp - 0x40]
call fcn.00403300
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0xc6]
mov word [ebp - 0xc6], 0xb5
mov byte [ebp - 0xc4], 1
call fcn.0040afc0
push eax
lea ecx, [ebp - 0x40]
call fcn.00466460
lea eax, [ebp - 0x2b8]
push eax
lea ecx, [ebp - 0x40]
call fcn.00466470
lea ecx, [ebp - 0x40]
call fcn.004033a0
mov ecx, eax
call fcn.0040cb40
test al, al
jne 0x447db5
lea ecx, [ebp - 0x40]
call fcn.00416d10
test al, al
je 0x447f59
lea ecx, [ebp - 0x151]
mov dword [ebp - 0x151], 0x89938fc7
mov word [ebp - 0x14d], 0x100
call fcn.0040c430
lea ecx, [ebp - 0xc0]
mov word [ebp - 0xc0], 0xb5
mov esi, eax
mov byte [ebp - 0xbe], 1
call fcn.0040afc0
push eax
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0x3d4]
call fcn.0046a3b0
add esp, 4
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 4], 0x50
push ecx
mov edx, eax
lea ecx, [ebp - 0x3bc]
call fcn.0046a5d0
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0x20c]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x3bc]
call fcn.00403260
lea ecx, [ebp - 0x3d4]
mov byte [ebp - 4], 0x54
call fcn.00403260
sub esp, 0x18
lea eax, [ebp - 0x20c]
mov ecx, esp
push eax
call fcn.00466660
call fcn.0040cab0
add esp, 0x18
test al, al
jne 0x447f4e
lea ecx, [ebp - 0x20c]
call fcn.004033a0
lea ecx, [ebp - 0x4c4]
mov esi, eax
call fcn.004033a0
push 0
push esi
push eax
call dword [0x50c08c]
test eax, eax
je 0x447f4e
movaps xmm0, xmmword [0x526200]
lea eax, [ebp - 0x250]
push eax
movups xmmword [ebp - 0x29f], xmm0
lea ecx, [ebp - 0x29f]
mov dword [ebp - 0x27f], 0x695d7e67
movaps xmm0, xmmword [0x525810]
push 0x20006
push 0
movups xmmword [ebp - 0x28f], xmm0
mov dword [ebp - 0x27b], 0x7f667d7f
mov dword [ebp - 0x277], 0x61414e7f
mov word [ebp - 0x273], 0x7b
mov byte [ebp - 0x271], 1
call fcn.00418de0
push eax
push 0x80000001
call dword [0x50c004]
test eax, eax
jne 0x447f4e
lea ecx, [ebp - 0x20c]
call fcn.00403250
lea ecx, [ebp - 0x20c]
mov edi, eax
call fcn.004033a0
lea ecx, [ebp - 0x2b8]
mov esi, eax
call fcn.004033a0
push edi
push esi
push 1
push 0
push eax
push dword [ebp - 0x250]
call dword [0x50c024]
push dword [ebp - 0x250]
call dword [0x50c00c]
lea ecx, [ebp - 0x20c]
call fcn.00403260
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x4e
call fcn.00403260
cmp byte [ebp - 0x46], 0
je 0x448540
movaps xmm0, xmmword [0x524e90]
lea ecx, [ebp - 0x39]
movups xmmword [ebp - 0x39], xmm0
mov byte [ebp - 0x29], 1
call fcn.0040f9f0
push eax
call fcn.004ec1e1
add esp, 4
test eax, eax
je 0x448540
push eax
lea ecx, [ebp - 0x20c]
call fcn.00403300
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xbd]
mov word [ebp - 0xbd], 0xb5
mov byte [ebp - 0xbb], 1
call fcn.0040afc0
push eax
lea ecx, [ebp - 0x20c]
call fcn.00466460
lea eax, [ebp - 0x454]
push eax
lea ecx, [ebp - 0x20c]
call fcn.00466470
lea ecx, [ebp - 0x20c]
call fcn.004033a0
mov ecx, eax
call fcn.0040cb40
test al, al
jne 0x44802d
lea ecx, [ebp - 0x20c]
call fcn.004033a0
push eax
lea ecx, [ebp - 0x248]
call fcn.00403300
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x248]
or ebx, 0x1000
mov dword [ebp - 0x14], ebx
call fcn.00416d10
mov byte [ebp - 0xd], 0
test al, al
je 0x448031
mov byte [ebp - 0xd], 1
mov dword [ebp - 4], 0x55
test ebx, 0x1000
je 0x448054
and ebx, 0xffffefff
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x14], ebx
call fcn.00403260
cmp byte [ebp - 0xd], 0
je 0x448531
lea ecx, [ebp - 0x157]
mov dword [ebp - 0x157], 0x89938fc7
mov word [ebp - 0x153], 0x100
call fcn.0040c430
lea ecx, [ebp - 0xb1]
mov word [ebp - 0xb1], 0xb5
mov esi, eax
mov byte [ebp - 0xaf], 1
call fcn.0040afc0
push eax
lea edx, [ebp - 0x20c]
lea ecx, [ebp - 0x3d4]
call fcn.0046a3b0
add esp, 4
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x57
push ecx
mov edx, eax
lea ecx, [ebp - 0x3bc]
call fcn.0046a5d0
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x40]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x3bc]
call fcn.00403260
lea ecx, [ebp - 0x3d4]
mov byte [ebp - 4], 0x5b
call fcn.00403260
sub esp, 0x18
lea eax, [ebp - 0x40]
mov ecx, esp
push eax
call fcn.00466660
call fcn.0040cab0
add esp, 0x18
test al, al
jne 0x448529
lea ecx, [ebp - 0x40]
call fcn.004033a0
lea ecx, [ebp - 0x4c4]
mov esi, eax
call fcn.004033a0
push 0
push esi
push eax
call dword [0x50c08c]
test eax, eax
je 0x448529
push 0x104
lea eax, [ebp - 0x7a0]
mov dword [ebp - 0x18], 0x104
push 0
push eax
call fcn.004df7b0
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x7a0]
push eax
call dword [0x50c020]
movaps xmm0, xmmword [0x526a70]
lea ecx, [ebp - 0x2ed]
movups xmmword [ebp - 0x2ed], xmm0
mov dword [ebp - 0x2dd], 0xdc9788d6
mov dword [ebp - 0x2d9], 0x48b8b7b5
mov dword [ebp - 0x2d5], 0x575144
mov byte [ebp - 0x2d1], 1
call fcn.0040fb10
lea ecx, [ebp - 0x1ae]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1ae], 0x98c4cacb
mov dword [ebp - 0x1aa], 0xcdce83
mov byte [ebp - 0x1a6], 1
call fcn.0040c460
lea ecx, [ebp - 0x1b7]
mov dword [ebp - 0x1b7], 0x98c4cacb
mov ebx, eax
mov dword [ebp - 0x1b3], 0xcdce9f
mov byte [ebp - 0x1af], 1
call fcn.0040c460
mov edi, eax
lea ecx, [ebp - 0x668]
lea eax, [ebp - 0x7a0]
push eax
call fcn.00403300
mov esi, eax
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x3a2]
movaps xmm0, xmmword [0x526540]
movups xmmword [ebp - 0x3a2], xmm0
mov dword [ebp - 0x392], 0xdc9dd5d9
mov dword [ebp - 0x38e], 0x20aaacd2
mov word [ebp - 0x38a], 0x23
mov byte [ebp - 0x388], 1
call fcn.00416ca0
push esi
mov edx, eax
lea ecx, [ebp - 0x650]
call fcn.0046a4d0
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x638]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x5e
push ecx
mov edx, eax
lea ecx, [ebp - 0x5d8]
call fcn.0046a5d0
add esp, 4
push ebx
mov edx, eax
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x5f0]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x60
push ecx
mov edx, eax
lea ecx, [ebp - 0x608]
call fcn.0046a5d0
add esp, 4
push dword [ebp - 0x24]
mov edx, eax
mov byte [ebp - 4], 0x61
lea ecx, [ebp - 0x46c]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x608]
call fcn.00403260
lea ecx, [ebp - 0x5f0]
call fcn.00403260
lea ecx, [ebp - 0x5d8]
call fcn.00403260
lea ecx, [ebp - 0x638]
call fcn.00403260
lea ecx, [ebp - 0x650]
call fcn.00403260
lea ecx, [ebp - 0x668]
mov byte [ebp - 4], 0x68
call fcn.00403260
sub esp, 0x18
lea ecx, [ebp - 0x46c]
mov esi, esp
call fcn.004033a0
push eax
mov ecx, esi
call fcn.00403300
xor cl, cl
call fcn.00416ea0
movaps xmm0, xmmword [0x5268e0]
lea ecx, [ebp - 0x28e]
add esp, 0x18
mov dword [ebp - 0x27e], 0x9089d5d9
movups xmmword [ebp - 0x28e], xmm0
mov dword [ebp - 0x27a], 0x47b6b6dd
mov dword [ebp - 0x276], 0x50504749
mov word [ebp - 0x272], 0x100
call fcn.00414c10
lea ecx, [ebp - 0x1c0]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c0], 0x98c4cacb
mov dword [ebp - 0x1bc], 0xcdce83
mov byte [ebp - 0x1b8], 1
call fcn.0040c460
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x19c], 0x98c4cacb
mov ebx, eax
mov dword [ebp - 0x198], 0xcdce9f
mov byte [ebp - 0x194], 1
call fcn.0040c460
mov edi, eax
lea ecx, [ebp - 0x548]
lea eax, [ebp - 0x7a0]
push eax
call fcn.00403300
mov esi, eax
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x387]
movaps xmm0, xmmword [0x526540]
movups xmmword [ebp - 0x387], xmm0
mov dword [ebp - 0x377], 0xdc9dd5d9
mov dword [ebp - 0x373], 0x20aaacd2
mov word [ebp - 0x36f], 0x23
mov byte [ebp - 0x36d], 1
call fcn.00416ca0
push esi
mov edx, eax
lea ecx, [ebp - 0x530]
call fcn.0046a4d0
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 0x6a
lea ecx, [ebp - 0x698]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x6b
push ecx
mov edx, eax
lea ecx, [ebp - 0x680]
call fcn.0046a5d0
add esp, 4
push ebx
mov edx, eax
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x3d4]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x6d
push ecx
mov edx, eax
lea ecx, [ebp - 0x3bc]
call fcn.0046a5d0
add esp, 4
push dword [ebp - 0x24]
mov edx, eax
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x248]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x3bc]
call fcn.00403260
lea ecx, [ebp - 0x3d4]
call fcn.00403260
lea ecx, [ebp - 0x680]
call fcn.00403260
lea ecx, [ebp - 0x698]
call fcn.00403260
lea ecx, [ebp - 0x530]
call fcn.00403260
lea ecx, [ebp - 0x548]
mov byte [ebp - 4], 0x75
call fcn.00403260
sub esp, 0x18
lea ecx, [ebp - 0x248]
mov esi, esp
call fcn.004033a0
push eax
mov ecx, esi
call fcn.00403300
xor cl, cl
call fcn.00416ea0
add esp, 0x18
lea ecx, [ebp - 0x248]
call fcn.00403260
lea ecx, [ebp - 0x46c]
call fcn.00403260
mov ebx, dword [ebp - 0x14]
lea ecx, [ebp - 0x40]
call fcn.00403260
lea ecx, [ebp - 0x20c]
mov byte [ebp - 4], 0x4e
call fcn.00403260
cmp byte [ebp - 0x45], 0
je 0x448900
lea ecx, [ebp - 0x15d]
mov dword [ebp - 0x15d], 0xbca6afbd
mov word [ebp - 0x159], 0x100
call fcn.0040c430
push eax
call fcn.004ec1e1
add esp, 4
test eax, eax
je 0x448900
push eax
lea ecx, [ebp - 0x20c]
call fcn.00403300
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0xb4]
mov word [ebp - 0xb4], 0xb5
mov byte [ebp - 0xb2], 1
call fcn.0040afc0
push eax
lea ecx, [ebp - 0x20c]
call fcn.00466460
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x20c]
call fcn.00466470
lea ecx, [ebp - 0x20c]
call fcn.004033a0
mov ecx, eax
call fcn.0040cb40
test al, al
jne 0x44860f
lea ecx, [ebp - 0x20c]
call fcn.004033a0
push eax
lea ecx, [ebp - 0x46c]
call fcn.00403300
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x46c]
or ebx, 0x2000
mov dword [ebp - 0x14], ebx
call fcn.00416d10
mov byte [ebp - 0xd], 0
test al, al
je 0x448613
mov byte [ebp - 0xd], 1
mov dword [ebp - 4], 0x76
test ebx, 0x2000
je 0x448636
and ebx, 0xffffdfff
lea ecx, [ebp - 0x46c]
mov dword [ebp - 0x14], ebx
call fcn.00403260
cmp byte [ebp - 0xd], 0
je 0x4488f1
lea ecx, [ebp - 0x139]
mov dword [ebp - 0x139], 0x89938fc7
mov word [ebp - 0x135], 0x100
call fcn.0040c430
lea ecx, [ebp - 0xb7]
mov word [ebp - 0xb7], 0xb5
mov esi, eax
mov byte [ebp - 0xb5], 1
call fcn.0040afc0
push eax
lea edx, [ebp - 0x20c]
lea ecx, [ebp - 0x530]
call fcn.0046a3b0
add esp, 4
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x78
push ecx
mov edx, eax
lea ecx, [ebp - 0x548]
call fcn.0046a5d0
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x79
lea ecx, [ebp - 0x248]
call fcn.0046a410
add esp, 4
lea ecx, [ebp - 0x548]
call fcn.00403260
lea ecx, [ebp - 0x530]
mov byte [ebp - 4], 0x7c
call fcn.00403260
sub esp, 0x18
lea eax, [ebp - 0x248]
mov ecx, esp
push eax
call fcn.00466660
call fcn.0040cab0
add esp, 0x18
test al, al
jne 0x448721
lea ecx, [ebp - 0x248]
call fcn.004033a0
lea ecx, [ebp - 0x4c4]
mov esi, eax
call fcn.004033a0
push 0
push esi
push eax
call dword [0x50c08c]
test eax, eax
je 0x4488e6
lea eax, [ebp - 0x7a0]
push eax
push 0
push 0
push 7
push 0
call dword [0x50c2e0]
test eax, eax
js 0x4488e6
lea eax, [ebp - 0x7a0]
push eax
lea ecx, [ebp - 0x40]
call fcn.00403300
mov byte [ebp - 4], 0x7d
lea ecx, [ebp - 0x13f]
mov dword [ebp - 0x13f], 0x878586c7
mov word [ebp - 0x13b], 0x100
call fcn.0040c430
mov esi, eax
mov word [ebp - 0xba], 0xb5
lea eax, [ebp - 0xa8]
mov byte [ebp - 0xb8], 1
push eax
lea ecx, [ebp - 0xba]
call fcn.0040afc0
mov edx, eax
lea ecx, [ebp - 0x530]
call fcn.0046a470
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x548]
call fcn.0046a410
add esp, 4
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x7f
call fcn.00466470
lea ecx, [ebp - 0x548]
call fcn.00403260
lea ecx, [ebp - 0x530]
mov byte [ebp - 4], 0x7d
call fcn.00403260
sub esp, 0x18
lea eax, [ebp - 0x40]
mov ecx, esp
push eax
call fcn.00466660
call fcn.0040cab0
add esp, 0x18
test al, al
jne 0x4488de
push 0
call dword [0x50c384]
test eax, eax
js 0x4488de
lea eax, [ebp - 0x5c]
push eax
push 0x50c4e0
push 1
push 0
push 0x50c510
call dword [0x50c37c]
test eax, eax
js 0x4488d8
mov eax, dword [ebp - 0x5c]
lea ecx, [ebp - 0x248]
mov eax, dword [eax]
mov esi, dword [eax + 0x50]
call fcn.004033a0
push eax
push dword [ebp - 0x5c]
call esi
mov eax, dword [ebp - 0x5c]
lea ecx, [ebp - 0xa8]
mov eax, dword [eax]
mov esi, dword [eax + 0x1c]
call fcn.004033a0
push eax
push dword [ebp - 0x5c]
call esi
mov ecx, dword [ebp - 0x5c]
lea edx, [ebp - 0x258]
push edx
push 0x50c4f0
push ecx
mov eax, dword [ecx]
call dword [eax]
test eax, eax
js 0x4488cf
push 0x208
lea eax, [ebp - 0x9a8]
push 0
push eax
call fcn.004df7b0
add esp, 0xc
lea eax, [ebp - 0x9a8]
lea ecx, [ebp - 0x40]
push 0x104
push eax
push 0xffffffffffffffff
call fcn.004033a0
push eax
push 0
push 0
call dword [0x50c074]
mov ecx, dword [ebp - 0x258]
lea edx, [ebp - 0x9a8]
push 1
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x18]
mov eax, dword [ebp - 0x258]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [0x50c380]
lea ecx, [ebp - 0x40]
call fcn.00403260
lea ecx, [ebp - 0x248]
call fcn.00403260
lea ecx, [ebp - 0x20c]
mov byte [ebp - 4], 0x4e
call fcn.00403260
lea ecx, [ebp - 0x4c4]
call fcn.004033a0
lea ecx, [ebp - 0x133]
mov dword [ebp - 0x133], 0x828e9a86
mov esi, eax
mov word [ebp - 0x12f], 0x100
call fcn.0040c430
push 1
push 0
push 0
push esi
push eax
push 0
call dword [0x50c2dc]
sub esp, 0x18
lea eax, [ebp - 0x580]
mov ecx, esp
push eax
call fcn.00466660
call fcn.004200d0
add esp, 0x18
lea ecx, [ebp - 0x454]
call fcn.00403260
lea ecx, [ebp - 0xa8]
call fcn.00403260
lea ecx, [ebp - 0x2b8]
call fcn.00403260
lea ecx, [ebp - 0x4c4]
call fcn.00403260
lea ecx, [ebp - 0x36c]
call fcn.00468860
lea ecx, [ebp - 0x270]
call fcn.00403260
lea ecx, [ebp - 0x2fc]
call fcn.00468860
lea ecx, [ebp - 0x2c4]
call fcn.00468860
lea ecx, [ebp - 0x568]
call fcn.00403260
lea ecx, [ebp - 0x43c]
call fcn.00403260
lea ecx, [ebp - 0x620]
call fcn.00403260
lea ecx, [ebp - 0x580]
mov byte [ebp - 4], 7
call fcn.00403260
lea ecx, [ebp - 0x47c]
call fcn.00463360
lea eax, [ebp - 0x5b0]
push eax
lea ecx, [ebp - 0x47c]
call fcn.00467b90
mov ebx, dword [ebp - 0xdc]
test al, al
je 0x445f70
lea ecx, [ebp + 8]
call fcn.00403260
lea ecx, [ebp + 0x20]
call fcn.00464100
lea ecx, [ebp + 0x30]
call fcn.00464100
lea ecx, [ebp + 0x40]
call fcn.00464100
lea ecx, [ebp + 0x50]
call fcn.00464100
lea ecx, [ebp + 0x60]
call fcn.00464100
lea ecx, [ebp + 0x70]
call fcn.00464100
lea ecx, [ebp + 0x80]
call fcn.00403260
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret