Function at 0x448880
Capabilities:
Reference sql statements

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49e9df
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1188
call fcn.0048a590
mov eax, dword [0x4d7200]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x1138], edi
mov eax, dword [edi + 0xbc]
lea ecx, [edi + 0x2e8]
cmp eax, 0xffffffff
jne 0x4488e0
mov eax, dword [ecx]
mov edx, dword [edi + 0x2e4]
test edx, edx
je 0x44f627
cmp eax, 1
jl 0x44f627
cmp eax, dword [ecx]
jg 0x44f627
lea eax, [eax + eax*8]
cmp dword [edx + eax*8 + 0xc], 0
je 0x44f627
cmp dword [edx + eax*8], 0xf
jne 0x44f627
push 2
push 0xffffffffffffffff
push 0x100c
push dword [edx + eax*8 + 4]
mov eax, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x112c], eax
call eax
mov esi, eax
test esi, esi
js 0x44f627
push 3
push esi
push dword [edi + 0xbc]
xorps xmm0, xmm0
mov dword [ebp - 0x54], 0
lea ecx, [edi + 0x2a8]
movq qword [ebp - 0x5c], xmm0
call fcn.00416470
mov dword [ebp - 0x1180], eax
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], eax
mov byte [ebp - 0x54], 1
push 0
mov dword [ebp - 4], 0
lea ecx, [edi + 0x2a8]
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
push esi
movq qword [ebp - 0x2c], xmm0
push dword [edi + 0xbc]
call fcn.00416470
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x24], 1
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
xor eax, eax
movq qword [ebp - 0x20], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1140], eax
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x18], 1
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1180]
test ecx, ecx
jne 0x448a03
push 2
call fcn.0048a28e
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x1180], ecx
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x5c], ecx
mov word [ecx], ax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1140], eax
mov byte [ebp - 0x54], 1
xor esi, esi
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1134], ecx
mov byte [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
inc esi
cmp word [esi*2 + str.SELECT__FROM_MSFT_Disk_WHERE_Number_], 0
jne 0x448a21
test ecx, ecx
je 0x448a42
xor eax, eax
cmp word [ecx], ax
je 0x448a40
inc eax
cmp word [ecx + eax*2], 0
jne 0x448a38
add esi, eax
xor ecx, ecx
lea eax, [esi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov ecx, eax
add esp, 4
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1144], ecx
test eax, eax
je 0x448a86
movzx edx, word [eax]
test dx, dx
je 0x448a86
mov word [ecx], dx
lea eax, [eax + 2]
movzx edx, word [eax]
add ecx, 2
test dx, dx
jne 0x448a75
mov edi, str.SELECT__FROM_MSFT_Disk_WHERE_Number_
mov edx, 0x53
sub edi, ecx
mov word [ecx], dx
add ecx, 2
movzx eax, word [edi + ecx]
mov edx, eax
test ax, ax
jne 0x448a92
mov eax, dword [ebp - 0x1180]
mov edi, dword [ebp - 0x1134]
test eax, eax
je 0x448ad1
movzx eax, word [eax]
mov edx, eax
test ax, ax
je 0x448ad1
nop dword [eax]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x448ac0
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x448ae6
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x1144]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1140]
mov dword [ebp - 0x1c], esi
mov byte [ebp - 0x18], 1
test eax, eax
je 0x448b0e
push eax
call fcn.00489ed3
mov esi, dword [ebp - 0x20]
add esp, 4
jmp 0x448b14
mov esi, dword [ebp - 0x1144]
test esi, esi
jne 0x448b30
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1138]
mov byte [ebp - 0x18], 1
cmp byte [eax + 0x150], 0
lea edi, [eax + 0x138]
jne 0x448b57
mov ecx, dword [edi]
test ecx, ecx
je 0x448b57
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
mov dword [edi], 0
mov edx, esi
mov edi, dword [ebp - 0x1138]
mov ecx, dword [edi + 0x130]
call fcn.0041a750
mov ecx, dword [edi + 0x134]
mov esi, eax
test ecx, ecx
je 0x448b84
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
test esi, esi
mov dword [edi + 0x134], esi
setne al
mov byte [edi + 0x160], al
mov byte [edi + 0x150], 0
mov ecx, dword [edi + 0x134]
test ecx, ecx
je 0x44f5bf
lea edx, [ebp - 0x88]
mov dword [ebp - 0x314], 0
push edx
lea edx, [ebp - 0x314]
mov dword [ebp - 0x88], 0
mov eax, dword [ecx]
push edx
push 1
push 0xffffffffffffffff
mov eax, dword [eax + 0x10]
push ecx
call eax
mov ecx, dword [edi + 0x138]
mov esi, dword [ebp - 0x314]
test ecx, ecx
je 0x448bf0
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
test esi, esi
mov dword [edi + 0x138], esi
mov byte [edi + 0x150], 0
setne al
mov byte [edi + 0x160], al
cmp dword [edi + 0x138], 0
je 0x44f5bf
push 0x4c1f08
lea ecx, [edi + 0x130]
call fcn.0041b170
cmp byte [edi + 0x160], 0
jne 0x448c3a
mov dword [ebp - 0x1148], 0
jmp 0x448c6a
cmp word [edi + 0x140], 8
jne 0x448c5d
push dword [edi + 0x148]
call fcn.0048e06c
movzx esi, ax
add esp, 4
mov dword [ebp - 0x1148], esi
jmp 0x448c6a
movzx eax, word [edi + 0x148]
mov dword [ebp - 0x1148], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0xa8], xmm0
movups xmmword [ebp - 0x98], xmm0
mov eax, dword [edi + 0x54]
mov ecx, dword [edi + 0x44]
mov dword [ebp - 0xa8], 0
push ecx
push 0
push eax
mov byte [ebp - 4], 3
lea eax, [edi + 0x2a8]
movaps xmm0, xmmword [0x4cd010]
push ecx
push eax
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x90], 0xd
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x8c], 0
call fcn.00417480
mov byte [ebp - 4], 4
push dword [edi + 0x4d8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x448cea
mov eax, dword [edi + 0x4d8]
mov dword [ebp - 0x1140], eax
jmp 0x448cf4
mov dword [ebp - 0x1140], 0
mov esi, dword [ebp - 0x2c]
test esi, esi
jne 0x448d13
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x114c], eax
xor eax, eax
mov byte [ebp - 0x24], 1
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
test esi, esi
je 0x448d48
cmp word [esi], ax
je 0x448d48
nop dword [eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x448d40
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp word [ecx*2 + 0x4c5238], 0
jne 0x448d50
add eax, ecx
mov edx, 2
mov dword [ebp - 0x1134], eax
xor ecx, ecx
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, dword [ebp - 0x20]
add esp, 4
mov edi, eax
mov ecx, edi
test edx, edx
je 0x448da2
movzx eax, word [edx]
test ax, ax
je 0x448da2
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x448d91
test esi, esi
je 0x448dc3
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x448dc3
sub esi, ecx
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + esi]
mov edx, eax
test ax, ax
jne 0x448db2
mov esi, 0x4c5238
mov edx, 0x20
sub esi, ecx
nop
mov word [ecx], dx
lea ecx, [ecx + 2]
movzx eax, word [esi + ecx]
mov edx, eax
test ax, ax
jne 0x448dd0
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x448df6
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x1134]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x114c]
mov dword [ebp - 0x20], edi
mov byte [ebp - 0x18], 1
test eax, eax
je 0x448e1c
push eax
call fcn.00489ed3
mov edi, dword [ebp - 0x20]
add esp, 4
push 0x268
lea eax, [ebp - 0x310]
push 0
push eax
call fcn.0048b9e0
add esp, 0xc
test edi, edi
jne 0x448e4e
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov word [eax], cx
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
mov esi, dword [ebp - 0x1138]
mov byte [ebp - 0x18], 1
mov word [ebp - 0x2d8], 0
mov dword [ebp - 0x1fc], 0
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x1f8], 1
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x310]
push 1
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0
call fcn.00417000
push ecx
add esi, 0x22c
lea eax, [ebp - 0x310]
lea ecx, [ebp - 0x310]
cmovne eax, esi
mov esi, dword [ebp - 0x1140]
push esi
push 0xffffffffffffffff
push SysReAllocString
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x1f4
push 0x2ee
push edi
push 0x4c3cf8
mov dword [ebp - 0x150], eax
call fcn.0040bf80
push ecx
push 0xc
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xff000000
push 0x1f4
push 0x2ee
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 6
call fcn.004167f0
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x1134], eax
test esi, esi
je 0x448f7e
mov edi, dword [ebp - 0x1138]
xor esi, esi
add edi, 0x2f8
nop dword [eax + eax]
mov eax, dword [edi]
test eax, eax
je 0x448f5c
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x448f5c
inc esi
add edi, 4
cmp esi, 0x30
jl 0x448f40
jmp 0x448f7e
mov ecx, dword [ebp - 0x1138]
mov eax, dword [ebp - 0x1134]
mov dword [ecx + esi*4 + 0x2f8], eax
inc esi
cmp esi, dword [ecx + 0x2f4]
jle 0x448f7e
mov dword [ecx + 0x2f4], esi
movsd xmm0, qword [0x4cc778]
xor eax, eax
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0xffffff
movsd qword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x198], 0x2bc
mov byte [ebp - 0x194], 1
mov byte [ebp - 0x152], 0
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bff50], 0
jne 0x448fc0
inc eax
push eax
push 0x4bff50
lea eax, [ebp - 0x192]
push 0x20
push eax
call fcn.0048d183
mov eax, dword [ebp - 0x1c]
add esp, 0x10
mov dword [ebp - 0x120], 0x1400
mov byte [ebp - 0x18], 0
test eax, eax
jne 0x449010
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x44900d
cmp word [ecx], ax
je 0x44900d
inc eax
cmp word [ecx + eax*2], 0
jne 0x449005
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc ecx
cmp word [ecx*2 + 0x4c4e8c], 0
jne 0x449012
add eax, ecx
mov edx, 2
mov dword [ebp - 0x114c], eax
xor ecx, ecx
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, dword [ebp - 0x20]
mov edi, 0x4c4e8c
add esp, 4
mov dword [ebp - 0x1134], eax
mov ecx, eax
mov esi, 0x20
sub edi, eax
nop word [eax + eax]
mov word [ecx], si
add ecx, 2
movzx eax, word [edi + ecx]
mov esi, eax
test ax, ax
jne 0x449060
cmp dword [ebp - 0x20], 0
je 0x449092
movzx eax, word [edx]
mov esi, eax
test ax, ax
je 0x449092
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x449081
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x4490a7
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x114c]
lea ecx, [ebp - 0x310]
mov esi, dword [ebp - 0x1134]
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x18], 1
call fcn.00416d40
mov edi, dword [sym.imp.USER32.dll_CreateWindowExW]
test al, al
jne 0x4490de
mov dword [ebp - 0x1188], 0
jmp 0x449153
mov eax, dword [ebp - 0x2d0]
push 0
push dword [ebp - 0x1f4]
inc eax
push eax
push dword [ebp - 0xdc]
movzx eax, byte [ebp - 0xc8]
push 0x1c
push 0x2cb
push 5
and eax, 1
push 5
shl eax, 0x11
add eax, 0x50000300
push eax
push esi
push 0x4c018c
push 0
call edi
test eax, eax
jne 0x449128
mov dword [ebp - 0x1188], eax
jmp 0x449153
push eax
push 0xd
lea ecx, [ebp - 0x310]
call fcn.00416ab0
mov ecx, dword [ebp - 0x2d4]
mov esi, eax
movaps xmm0, xmmword [0x4cce90]
mov dword [ebp - 0x1188], esi
lea edx, [esi + esi*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
movsd xmm0, qword [0x4cc768]
xor eax, eax
movsd qword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x198], 0x190
mov byte [ebp - 0x194], 1
mov byte [ebp - 0x152], 0
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bff50], 0
jne 0x449180
inc eax
push eax
push 0x4bff50
lea eax, [ebp - 0x192]
push 0x20
push eax
call fcn.0048d183
add esp, 0x10
mov dword [ebp - 0x120], 0x400
lea ecx, [ebp - 0x310]
push 0xff000000
sub esp, 8
push 6
push 0x2d0
call fcn.00411850
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x117c], eax
call fcn.00416d40
test al, al
je 0x449246
mov ecx, dword [ebp - 0x2d0]
movzx eax, byte [ebp - 0xc8]
inc ecx
push 0
push dword [ebp - 0x1f4]
and eax, 1
push ecx
push dword [ebp - 0xdc]
shl eax, 0x11
push 0x12
push 0x212
push 0x28
push 0xa
add eax, 0x50000100
push eax
push 0x4c5260
push 0x4c018c
push 0
call edi
test eax, eax
je 0x449246
push eax
push 0xd
lea ecx, [ebp - 0x310]
call fcn.00416ab0
movaps xmm0, xmmword [0x4ccc20]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x2d4]
movups xmmword [eax + ecx*8 + 0x24], xmm0
cmp dword [ebp - 0xe0], 0
je 0x4492d8
lea ecx, [ebp - 0x310]
call fcn.00416d40
test al, al
je 0x4492d8
mov eax, dword [ebp - 0x2d0]
push 0
push dword [ebp - 0x1f4]
inc eax
push eax
push dword [ebp - 0xdc]
movzx eax, byte [ebp - 0xc8]
push 0x14
push 0xc8
push 0x26
and eax, 1
push 0x21c
shl eax, 0x11
add eax, 0x50010000
push eax
push 0x4c5304
push 0x4c019c
push 0
call edi
test eax, eax
je 0x4492d8
push eax
push 3
lea ecx, [ebp - 0x310]
call fcn.00416ab0
mov ecx, dword [ebp - 0x2d4]
mov esi, eax
movaps xmm0, xmmword [0x4cccd0]
mov dword [ebp - 0x1184], esi
lea edx, [esi + esi*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
jmp 0x4492e2
mov dword [ebp - 0x1184], 0
movsd xmm0, qword [0x4cc760]
xor eax, eax
movsd qword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x198], 0x190
mov byte [ebp - 0x194], 1
mov byte [ebp - 0x152], 0
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bff50], 0
jne 0x449310
inc eax
push eax
push 0x4bff50
lea eax, [ebp - 0x192]
push 0x20
push eax
call fcn.0048d183
add esp, 0x10
lea ecx, [ebp - 0x310]
push 0x10020
push 0x1080000d
push 0x1ae
push 0x2da
push 0x3c
push 0xa
push 0x4c0188
push 0x4c532c
call fcn.004120f0
mov ecx, dword [ebp - 0x2d4]
mov edi, eax
mov dword [ebp - 0x1130], edi
mov esi, edi
cmp edi, 0xffffffff
jne 0x44937e
mov esi, dword [ebp - 0x2d0]
jmp 0x44939b
mov edx, dword [ebp - 0x2d0]
test ecx, ecx
je 0x4493d1
cmp edi, 1
jl 0x4493d1
cmp edi, edx
jg 0x4493d1
lea eax, [edi + edi*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x4493d1
push 0x8c
push 0
push 0x101e
lea eax, [esi + esi*8]
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov ecx, dword [ebp - 0x2d4]
mov esi, edi
cmp edi, 0xffffffff
jne 0x4493c9
mov esi, dword [ebp - 0x2d0]
jmp 0x4493ea
mov edx, dword [ebp - 0x2d0]
jmp 0x4493d3
mov esi, edi
test ecx, ecx
je 0x449420
cmp edi, 1
jl 0x449420
cmp edi, edx
jg 0x449420
lea eax, [edi + edi*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x449420
push 0xfa
push 1
push 0x101e
lea eax, [esi + esi*8]
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov ecx, dword [ebp - 0x2d4]
mov esi, edi
cmp edi, 0xffffffff
jne 0x449418
mov esi, dword [ebp - 0x2d0]
jmp 0x449439
mov edx, dword [ebp - 0x2d0]
jmp 0x449422
mov esi, edi
test ecx, ecx
je 0x449452
cmp edi, 1
jl 0x449452
cmp edi, edx
jg 0x449452
lea eax, [edi + edi*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x449452
push 0x1f4
push 2
push 0x101e
lea eax, [esi + esi*8]
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x1138]
add esi, 0x130
push 0x4c5368
mov ecx, esi
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x449489
xorps xmm0, xmm0
movlpd qword [ebp - 0x1178], xmm0
mov edi, dword [ebp - 0x1174]
mov eax, dword [ebp - 0x1178]
jmp 0x4494a5
cmp word [esi + 0x10], 8
jne 0x44949f
push dword [esi + 0x18]
call fcn.0048e08f
add esp, 4
mov edi, edx
jmp 0x4494a5
mov eax, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
push edi
push eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x113c], eax
call fcn.00401cb0
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5384
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1128], eax
test esi, esi
jne 0x4494f5
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], ecx
sub esp, 8
mov byte [ebp - 0x24], 1
lea ecx, [ebp - 0x20]
push edi
push dword [ebp - 0x113c]
call fcn.00402130
mov edi, eax
mov dword [ebp - 0x113c], edi
mov byte [edi + 8], 0
mov ecx, dword [edi + 4]
test ecx, ecx
jne 0x44953b
mov eax, dword [edi]
test eax, eax
je 0x449538
cmp word [eax], cx
je 0x449538
nop dword [eax]
inc ecx
cmp word [eax + ecx*2], 0
jne 0x449530
mov dword [edi + 4], ecx
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c2190], 0
jne 0x449540
add ecx, eax
test esi, esi
je 0x44956a
xor eax, eax
cmp word [esi], ax
je 0x449568
nop dword [eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x449560
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c53a4], 0
jne 0x449570
add ecx, eax
mov edx, 2
mov dword [ebp - 0x1144], ecx
lea eax, [ecx + 1]
xor ecx, ecx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov ecx, dword [edi]
add esp, 4
mov dword [ebp - 0x1140], eax
mov edx, eax
mov dword [ebp - 0x1134], ecx
test ecx, ecx
je 0x4495e2
movzx ecx, word [ecx]
mov edi, ecx
mov dword [ebp - 0x114c], edi
test cx, cx
je 0x4495e2
mov edi, dword [ebp - 0x1134]
sub edi, eax
mov eax, ecx
movzx ecx, ax
mov word [edx], cx
add edx, 2
movzx eax, word [edx + edi]
mov ecx, eax
test ax, ax
jne 0x4495d1
mov edi, 0x4c2190
mov ecx, 0x20
sub edi, edx
nop
mov word [edx], cx
add edx, 2
movzx eax, word [edx + edi]
mov ecx, eax
test ax, ax
jne 0x4495f0
test esi, esi
je 0x449621
movzx eax, word [esi]
mov ecx, eax
test ax, ax
je 0x449621
nop
mov word [edx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add edx, 2
test ax, ax
jne 0x449610
mov eax, 0x20
mov edi, 0x4c53a4
nop dword [eax + eax]
mov word [edx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
lea edx, [edx + 2]
test ax, ax
jne 0x449630
mov edi, dword [ebp - 0x113c]
xor eax, eax
mov word [edx], ax
mov eax, dword [edi]
test eax, eax
je 0x44965b
push eax
call fcn.00489ed3
add esp, 4
mov ecx, dword [ebp - 0x1140]
mov eax, dword [ebp - 0x1144]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov byte [edi + 8], 1
test ecx, ecx
jne 0x449688
push 2
call fcn.0048a28e
add esp, 4
mov dword [edi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [edi + 4], ecx
mov byte [edi + 8], 1
mov esi, dword [edi]
mov edi, dword [ebp - 0x1130]
mov ecx, edi
mov edx, dword [ebp - 0x2d0]
cmp edi, 0xffffffff
mov eax, dword [ebp - 0x2d4]
cmove ecx, edx
test eax, eax
je 0x449700
cmp ecx, 1
jl 0x449700
cmp ecx, edx
jg 0x449700
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x449700
cmp dword [eax + ecx*8], 0xf
jne 0x449700
lea edx, [ebp - 0x968]
mov dword [ebp - 0x954], esi
mov esi, dword [ebp - 0x1128]
push edx
push esi
push 0x1074
mov dword [ebp - 0x960], 1
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
jmp 0x449706
mov esi, dword [ebp - 0x1128]
cmp edi, 0xffffffff
mov ecx, edi
cmove ecx, edx
test eax, eax
je 0x449756
cmp ecx, 1
jl 0x449756
cmp ecx, edx
jg 0x449756
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x449756
cmp dword [eax + ecx*8], 0xf
jne 0x449756
lea edx, [ebp - 0x9a4]
mov dword [ebp - 0x99c], 2
push edx
push esi
push 0x1074
mov dword [ebp - 0x990], 0x4c53b8
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c542c
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
push 0x4c544c
mov dword [ebp - 0x1128], eax
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x44979a
xor edi, edi
jmp 0x4497b5
cmp word [esi + 0x140], 8
mov edi, dword [esi + 0x148]
jne 0x4497b5
push edi
call fcn.0048e06c
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove eax, edx
test ecx, ecx
je 0x449834
cmp eax, 1
jl 0x449834
cmp eax, edx
jg 0x449834
lea esi, [eax + eax*8]
cmp dword [ecx + esi*8 + 0xc], 0
je 0x449834
cmp dword [ecx + esi*8], 0xf
jne 0x449834
test edi, edi
mov dword [ebp - 0x9d8], 1
mov edi, dword [ebp - 0x1128]
mov edx, 0x4c5474
mov eax, 0x4c5468
cmove eax, edx
mov dword [ebp - 0x9cc], eax
lea eax, [ebp - 0x9e0]
push eax
push edi
push 0x1074
push dword [ecx + esi*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
jmp 0x44983a
mov edi, dword [ebp - 0x1128]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, edx
test ecx, ecx
je 0x44988e
cmp eax, 1
jl 0x44988e
cmp eax, edx
jg 0x44988e
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44988e
cmp dword [ecx + eax*8], 0xf
jne 0x44988e
lea edx, [ebp - 0xa1c]
mov dword [ebp - 0xa14], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xa08], 0x4c5480
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c551c
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
mov edi, eax
push 0x4c5530
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
je 0x44a16c
cmp word [esi + 0x140], 8
jne 0x4498eb
push dword [esi + 0x148]
call fcn.0048e06c
add esp, 4
movzx eax, ax
jmp 0x4498f2
movzx eax, word [esi + 0x148]
cmp ax, 1
jne 0x44996c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449908
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop
inc eax
cmp word [eax*2 + 0x4c5540], 0
jne 0x449910
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5540]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449950
jmp 0x44a1e7
cmp ax, 2
jne 0x4499ec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449986
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c554c], 0
jne 0x449990
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c554c]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x4499d0
jmp 0x44a1e7
cmp ax, 3
jne 0x449a6c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449a06
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c5558], 0
jne 0x449a10
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5558]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449a50
jmp 0x44a1e7
cmp ax, 4
jne 0x449aec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449a86
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c5560], 0
jne 0x449a90
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5560]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449ad0
jmp 0x44a1e7
cmp ax, 5
jne 0x449b6c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449b06
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c5574], 0
jne 0x449b10
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5574]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449b50
jmp 0x44a1e7
cmp ax, 6
jne 0x449bec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449b86
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c557c], 0
jne 0x449b90
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c557c]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449bd0
jmp 0x44a1e7
cmp ax, 7
jne 0x449c6c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449c06
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c5598], 0
jne 0x449c10
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5598]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449c50
jmp 0x44a1e7
cmp ax, 8
jne 0x449cec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449c86
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c55a0], 0
jne 0x449c90
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c55a0]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449cd0
jmp 0x44a1e7
cmp ax, 9
jne 0x449d6c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449d06
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c55ac], 0
jne 0x449d10
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c55ac]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449d50
jmp 0x44a1e7
cmp ax, 0xa
jne 0x449dec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449d86
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c55b8], 0
jne 0x449d90
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c55b8]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449dd0
jmp 0x44a1e7
cmp ax, 0xb
jne 0x449e6c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449e06
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c55f0], 0
jne 0x449e10
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c55f0]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449e50
jmp 0x44a1e7
cmp ax, 0xc
jne 0x449eec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449e8a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c5614], 0
jne 0x449e90
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5614]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449ed0
jmp 0x44a1e7
cmp ax, 0xd
jne 0x449f6c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449f0a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c563c], 0
jne 0x449f10
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c563c]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449f50
jmp 0x44a1e7
cmp ax, 0xe
jne 0x449fec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x449f8a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c5668], 0
jne 0x449f90
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5668]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x449fd0
jmp 0x44a1e7
cmp ax, 0xf
jne 0x44a06c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a00a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c5678], 0
jne 0x44a010
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5678]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a050
jmp 0x44a1e7
cmp ax, 0x10
jne 0x44a0ec
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a08a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c56a0], 0
jne 0x44a090
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c56a0]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a0d0
jmp 0x44a1e7
cmp ax, 0x11
jne 0x44a16c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a10a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c56c0], 0
jne 0x44a110
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c56c0]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a150
jmp 0x44a1e7
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a180
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop word [eax + eax]
inc eax
cmp word [eax*2 + 0x4c046c], 0
jne 0x44a190
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a1e7
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c046c]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a1d0
xor ecx, ecx
mov word [edx + eax*2], cx
mov esi, dword [ebp - 0x20]
mov byte [ebp - 0x18], 1
test esi, esi
jne 0x44a214
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1130]
cmp ecx, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
cmove ecx, edx
mov byte [ebp - 0x18], 1
test eax, eax
je 0x44a294
cmp ecx, 1
jl 0x44a294
cmp ecx, edx
jg 0x44a294
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44a294
cmp dword [eax + ecx*8], 0xf
jne 0x44a294
lea edx, [ebp - 0xa58]
mov dword [ebp - 0xa50], 1
push edx
push edi
push 0x1074
mov dword [ebp - 0xa44], esi
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
mov esi, dword [ebp - 0x1130]
cmp esi, 0xffffffff
mov ecx, esi
cmove ecx, edx
test eax, eax
je 0x44a2fe
cmp ecx, 1
jl 0x44a2fe
cmp ecx, edx
jg 0x44a2fe
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44a2fe
cmp dword [eax + ecx*8], 0xf
jne 0x44a2fe
lea edx, [ebp - 0xa94]
mov dword [ebp - 0xa8c], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xa80], 0x4c56d0
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5718
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov ecx, dword [ebp - 0x1138]
mov edi, eax
push 0
push 0x4c573c
lea ecx, [ecx + 0x130]
call fcn.0041b250
mov ecx, dword [ebp - 0x2d4]
cmp esi, 0xffffffff
mov edx, esi
mov dword [ebp - 0x1134], eax
mov esi, dword [ebp - 0x2d0]
cmove edx, esi
test ecx, ecx
je 0x44a3b7
cmp edx, 1
jl 0x44a3b7
cmp edx, esi
jg 0x44a3b7
lea eax, [edx + edx*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44a3b7
cmp dword [ecx + eax*8], 0xf
jne 0x44a3b7
mov edx, dword [ebp - 0x1134]
mov dword [ebp - 0xabc], edx
lea edx, [ebp - 0xad0]
push edx
push edi
push 0x1074
mov dword [ebp - 0xac8], 1
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, esi
test ecx, ecx
je 0x44a41f
cmp eax, 1
jl 0x44a41f
cmp eax, esi
jg 0x44a41f
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44a41f
cmp dword [ecx + eax*8], 0xf
jne 0x44a41f
lea edx, [ebp - 0xb0c]
mov dword [ebp - 0xb04], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xaf8], 0x4c5760
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c57d0
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov ecx, dword [ebp - 0x1138]
mov edi, eax
push 0
push 0x4c57ec
lea ecx, [ecx + 0x130]
call fcn.0041b250
mov edx, dword [ebp - 0x1130]
cmp edx, 0xffffffff
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove edx, esi
mov dword [ebp - 0x1134], eax
test ecx, ecx
je 0x44a4dc
cmp edx, 1
jl 0x44a4dc
cmp edx, esi
jg 0x44a4dc
lea eax, [edx + edx*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44a4dc
cmp dword [ecx + eax*8], 0xf
jne 0x44a4dc
mov edx, dword [ebp - 0x1134]
mov dword [ebp - 0xb34], edx
lea edx, [ebp - 0xb48]
push edx
push edi
push 0x1074
mov dword [ebp - 0xb40], 1
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, esi
test ecx, ecx
je 0x44a544
cmp eax, 1
jl 0x44a544
cmp eax, esi
jg 0x44a544
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44a544
cmp dword [ecx + eax*8], 0xf
jne 0x44a544
lea edx, [ebp - 0xb84]
mov dword [ebp - 0xb7c], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xb70], 0x4c5808
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
cmp word [ebp - 0x1148], 2
jne 0x44a677
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c4f48
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov ecx, dword [ebp - 0x1138]
mov edi, eax
push 0
push 0x4c4f48
lea ecx, [ecx + 0x130]
call fcn.0041b250
mov edx, dword [ebp - 0x1130]
cmp edx, 0xffffffff
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove edx, esi
mov dword [ebp - 0x1134], eax
test ecx, ecx
je 0x44a60f
cmp edx, 1
jl 0x44a60f
cmp edx, esi
jg 0x44a60f
lea eax, [edx + edx*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44a60f
cmp dword [ecx + eax*8], 0xf
jne 0x44a60f
mov edx, dword [ebp - 0x1134]
mov dword [ebp - 0xbac], edx
lea edx, [ebp - 0xbc0]
push edx
push edi
push 0x1074
mov dword [ebp - 0xbb8], 1
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, esi
test ecx, ecx
je 0x44a677
cmp eax, 1
jl 0x44a677
cmp eax, esi
jg 0x44a677
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44a677
cmp dword [ecx + eax*8], 0xf
jne 0x44a677
lea edx, [ebp - 0x5e4]
mov dword [ebp - 0x5dc], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0x5d0], 0x4c5888
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x1138]
push 0x4c1f38
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
je 0x44a7cc
cmp word [esi + 0x140], 8
jne 0x44a6be
push dword [esi + 0x148]
call fcn.0048e06c
add esp, 4
movzx eax, ax
jmp 0x44a6c5
movzx eax, word [esi + 0x148]
test ax, ax
je 0x44a7cc
cmp ax, 1
jne 0x44a74c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a6ec
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c5960], 0
jne 0x44a6f2
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a847
nop dword [eax]
mov ax, word [ecx*2 + 0x4c5960]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a730
jmp 0x44a847
cmp ax, 2
jne 0x44a851
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a76a
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c59a8], 0
jne 0x44a770
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a847
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c59a8]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a7b0
jmp 0x44a847
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44a7e0
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 0x18], 0
xor eax, eax
nop word [eax + eax]
inc eax
cmp word [eax*2 + 0x4c5920], 0
jne 0x44a7f0
mov dword [ebp - 0x1c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], edx
test eax, eax
jle 0x44a847
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c5920]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp ecx, eax
jl 0x44a830
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x18], 1
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c59f4
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x20]
mov edi, eax
test esi, esi
jne 0x44a891
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1130]
cmp ecx, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
cmove ecx, edx
mov byte [ebp - 0x18], 1
test eax, eax
je 0x44a911
cmp ecx, 1
jl 0x44a911
cmp ecx, edx
jg 0x44a911
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44a911
cmp dword [eax + ecx*8], 0xf
jne 0x44a911
lea edx, [ebp - 0xc38]
mov dword [ebp - 0xc30], 1
push edx
push edi
push 0x1074
mov dword [ebp - 0xc24], esi
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
mov ecx, dword [ebp - 0x1130]
cmp ecx, 0xffffffff
cmove ecx, edx
test eax, eax
je 0x44a979
cmp ecx, 1
jl 0x44a979
cmp ecx, edx
jg 0x44a979
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44a979
cmp dword [eax + ecx*8], 0xf
jne 0x44a979
lea edx, [ebp - 0xc74]
mov dword [ebp - 0xc6c], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xc60], 0x4c5a10
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5a5c
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
push 0x4c5a6c
mov dword [ebp - 0x1128], eax
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x44a9c4
xor edi, edi
jmp 0x44a9e3
cmp word [esi + 0x140], 8
mov edi, dword [esi + 0x148]
jne 0x44a9e3
push edi
call fcn.0048e06c
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove eax, edx
test ecx, ecx
je 0x44aa79
cmp eax, 1
jl 0x44aa79
cmp eax, edx
jg 0x44aa79
lea esi, [eax + eax*8]
cmp dword [ecx + esi*8 + 0xc], 0
je 0x44aa79
cmp dword [ecx + esi*8], 0xf
jne 0x44aa79
test edi, edi
mov dword [ebp - 0xca8], 1
mov edi, dword [ebp - 0x1128]
mov edx, 0x4c5474
mov eax, 0x4c5468
cmove eax, edx
mov dword [ebp - 0xc9c], eax
lea eax, [ebp - 0xcb0]
push eax
push edi
push 0x1074
push dword [ecx + esi*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
jmp 0x44aa7f
mov edi, dword [ebp - 0x1128]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, edx
test ecx, ecx
je 0x44aae7
cmp eax, 1
jl 0x44aae7
cmp eax, edx
jg 0x44aae7
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44aae7
cmp dword [ecx + eax*8], 0xf
jne 0x44aae7
lea edx, [ebp - 0xcec]
mov dword [ebp - 0xce4], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xcd8], 0x4c5a80
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5b00
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
push 0x4c5b1c
mov dword [ebp - 0x1128], eax
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x44ab32
xor edi, edi
jmp 0x44ab51
cmp word [esi + 0x140], 8
mov edi, dword [esi + 0x148]
jne 0x44ab51
push edi
call fcn.0048e06c
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove eax, edx
test ecx, ecx
je 0x44abe7
cmp eax, 1
jl 0x44abe7
cmp eax, edx
jg 0x44abe7
lea esi, [eax + eax*8]
cmp dword [ecx + esi*8 + 0xc], 0
je 0x44abe7
cmp dword [ecx + esi*8], 0xf
jne 0x44abe7
test edi, edi
mov dword [ebp - 0xd20], 1
mov edi, dword [ebp - 0x1128]
mov edx, 0x4c5474
mov eax, 0x4c5468
cmove eax, edx
mov dword [ebp - 0xd14], eax
lea eax, [ebp - 0xd28]
push eax
push edi
push 0x1074
push dword [ecx + esi*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
jmp 0x44abed
mov edi, dword [ebp - 0x1128]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, edx
test ecx, ecx
je 0x44ac55
cmp eax, 1
jl 0x44ac55
cmp eax, edx
jg 0x44ac55
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44ac55
cmp dword [ecx + eax*8], 0xf
jne 0x44ac55
lea edx, [ebp - 0xd64]
mov dword [ebp - 0xd5c], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xd50], 0x4c5b38
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5bc4
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
mov edi, eax
push 0x4c4ed4
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x44aca4
mov dword [ebp - 0x1168], 0
jmp 0x44accd
cmp word [esi + 0x140], 8
mov eax, dword [esi + 0x148]
mov dword [ebp - 0x1168], eax
jne 0x44accd
push eax
call fcn.0048e06c
add esp, 4
mov dword [ebp - 0x1168], eax
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove eax, edx
test ecx, ecx
je 0x44ad5d
cmp eax, 1
jl 0x44ad5d
cmp eax, edx
jg 0x44ad5d
lea esi, [eax + eax*8]
cmp dword [ecx + esi*8 + 0xc], 0
je 0x44ad5d
cmp dword [ecx + esi*8], 0xf
jne 0x44ad5d
cmp byte [ebp - 0x1168], 0
mov edx, 0x4c5474
mov eax, 0x4c5468
mov dword [ebp - 0xd98], 1
cmove eax, edx
mov dword [ebp - 0xd8c], eax
lea eax, [ebp - 0xda0]
push eax
push edi
push 0x1074
push dword [ecx + esi*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, edx
test ecx, ecx
je 0x44adc5
cmp eax, 1
jl 0x44adc5
cmp eax, edx
jg 0x44adc5
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44adc5
cmp dword [ecx + eax*8], 0xf
jne 0x44adc5
lea edx, [ebp - 0xddc]
mov dword [ebp - 0xdd4], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xdc8], 0x4c5be0
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5c3c
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
push 0x4c4f30
mov dword [ebp - 0x1128], eax
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x44ae10
xor edi, edi
jmp 0x44ae2f
cmp word [esi + 0x140], 8
mov edi, dword [esi + 0x148]
jne 0x44ae2f
push edi
call fcn.0048e06c
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove eax, edx
test ecx, ecx
je 0x44aec5
cmp eax, 1
jl 0x44aec5
cmp eax, edx
jg 0x44aec5
lea esi, [eax + eax*8]
cmp dword [ecx + esi*8 + 0xc], 0
je 0x44aec5
cmp dword [ecx + esi*8], 0xf
jne 0x44aec5
test edi, edi
mov dword [ebp - 0xe10], 1
mov edi, dword [ebp - 0x1128]
mov edx, 0x4c5474
mov eax, 0x4c5468
cmove eax, edx
mov dword [ebp - 0xe04], eax
lea eax, [ebp - 0xe18]
push eax
push edi
push 0x1074
push dword [ecx + esi*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
jmp 0x44aecb
mov edi, dword [ebp - 0x1128]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, edx
test ecx, ecx
je 0x44af33
cmp eax, 1
jl 0x44af33
cmp eax, edx
jg 0x44af33
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44af33
cmp dword [ecx + eax*8], 0xf
jne 0x44af33
lea edx, [ebp - 0xe54]
mov dword [ebp - 0xe4c], 2
push edx
push edi
push 0x1074
mov dword [ebp - 0xe40], 0x4c5c58
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5cb8
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x1138]
push 0x4c1e70
mov dword [ebp - 0x1128], eax
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x44af7e
xor edi, edi
jmp 0x44af9d
cmp word [esi + 0x140], 8
mov edi, dword [esi + 0x148]
jne 0x44af9d
push edi
call fcn.0048e06c
add esp, 4
mov edi, eax
mov ecx, dword [ebp - 0x1130]
cmp ecx, 0xffffffff
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
cmove ecx, edx
test eax, eax
je 0x44b033
cmp ecx, 1
jl 0x44b033
cmp ecx, edx
jg 0x44b033
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44b033
cmp dword [eax + ecx*8], 0xf
jne 0x44b033
test edi, edi
mov dword [ebp - 0xe88], 1
mov esi, 0x4c5474
mov edx, 0x4c5468
cmove edx, esi
mov esi, dword [ebp - 0x1128]
mov dword [ebp - 0xe7c], edx
lea edx, [ebp - 0xe90]
push edx
push esi
push 0x1074
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
jmp 0x44b039
mov esi, dword [ebp - 0x1128]
mov ecx, dword [ebp - 0x1130]
cmp ecx, 0xffffffff
cmove ecx, edx
test eax, eax
je 0x44b0a1
cmp ecx, 1
jl 0x44b0a1
cmp ecx, edx
jg 0x44b0a1
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44b0a1
cmp dword [eax + ecx*8], 0xf
jne 0x44b0a1
lea edx, [ebp - 0xecc]
mov dword [ebp - 0xec4], 2
push edx
push esi
push 0x1074
mov dword [ebp - 0xeb8], 0x4c5cd0
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x1138]
add esi, 0x130
push 0x4c5d54
mov ecx, esi
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x44b0df
xorps xmm0, xmm0
movlpd qword [ebp - 0x1178], xmm0
mov edi, dword [ebp - 0x1174]
mov eax, dword [ebp - 0x1178]
jmp 0x44b102
cmp word [esi + 0x10], 8
jne 0x44b0fc
push dword [esi + 0x18]
call fcn.0048e08f
add esp, 4
mov edi, edx
jmp 0x44b102
mov eax, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
push edi
push eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x113c], eax
call fcn.00401cb0
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5d78
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1128], eax
test esi, esi
jne 0x44b156
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], ecx
sub esp, 8
mov byte [ebp - 0x24], 1
lea ecx, [ebp - 0x20]
push edi
push dword [ebp - 0x113c]
call fcn.00402130
mov edi, eax
mov dword [ebp - 0x1140], edi
mov byte [edi + 8], 0
mov ecx, dword [edi + 4]
test ecx, ecx
jne 0x44b1a1
mov eax, dword [edi]
test eax, eax
je 0x44b19e
cmp word [eax], cx
je 0x44b19e
inc ecx
cmp word [eax + ecx*2], 0
jne 0x44b196
mov dword [edi + 4], ecx
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c2190], 0
jne 0x44b1a3
add ecx, eax
test esi, esi
je 0x44b1ce
xor eax, eax
cmp word [esi], ax
je 0x44b1cc
inc eax
cmp word [esi + eax*2], 0
jne 0x44b1c4
add ecx, eax
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c53a4], 0
jne 0x44b1d0
add ecx, eax
mov edx, 2
mov dword [ebp - 0x114c], ecx
lea eax, [ecx + 1]
xor ecx, ecx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov ecx, dword [edi]
add esp, 4
mov dword [ebp - 0x1144], eax
mov edx, eax
mov dword [ebp - 0x1134], ecx
test ecx, ecx
je 0x44b241
movzx ecx, word [ecx]
test cx, cx
je 0x44b241
mov edi, dword [ebp - 0x1134]
sub edi, eax
nop dword [eax]
mov word [edx], cx
add edx, 2
movzx eax, word [edi + edx]
mov ecx, eax
test ax, ax
jne 0x44b230
mov edi, 0x4c2190
mov ecx, 0x20
sub edi, edx
nop dword [eax]
mov word [edx], cx
add edx, 2
movzx eax, word [edi + edx]
mov ecx, eax
test ax, ax
jne 0x44b250
test esi, esi
je 0x44b288
movzx eax, word [esi]
mov ecx, eax
test ax, ax
je 0x44b288
mov word [edx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add edx, 2
test ax, ax
jne 0x44b277
mov eax, 0x20
mov edi, 0x4c53a4
mov word [edx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
lea edx, [edx + 2]
test ax, ax
jne 0x44b292
mov edi, dword [ebp - 0x1140]
xor eax, eax
mov word [edx], ax
mov eax, dword [edi]
test eax, eax
je 0x44b2c1
push eax
call fcn.00489ed3
add esp, 4
mov ecx, dword [ebp - 0x1144]
mov eax, dword [ebp - 0x114c]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov byte [edi + 8], 1
test ecx, ecx
jne 0x44b2f2
push 2
call fcn.0048a28e
add esp, 4
mov dword [edi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [edi + 4], ecx
mov byte [edi + 8], 1
mov esi, dword [edi]
mov edi, dword [ebp - 0x1130]
mov ecx, edi
mov edx, dword [ebp - 0x2d0]
cmp edi, 0xffffffff
mov eax, dword [ebp - 0x2d4]
cmove ecx, edx
test eax, eax
je 0x44b381
cmp ecx, 1
jl 0x44b381
cmp ecx, edx
jg 0x44b381
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44b381
cmp dword [eax + ecx*8], 0xf
jne 0x44b381
lea edx, [ebp - 0xf08]
mov dword [ebp - 0xef4], esi
mov esi, dword [ebp - 0x1128]
push edx
push esi
push 0x1074
mov dword [ebp - 0xf00], 1
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d4]
jmp 0x44b387
mov esi, dword [ebp - 0x1128]
cmp edi, 0xffffffff
mov ecx, edi
cmove ecx, edx
test eax, eax
je 0x44b3eb
cmp ecx, 1
jl 0x44b3eb
cmp ecx, edx
jg 0x44b3eb
lea ecx, [ecx + ecx*8]
cmp dword [eax + ecx*8 + 0xc], 0
je 0x44b3eb
cmp dword [eax + ecx*8], 0xf
jne 0x44b3eb
lea edx, [ebp - 0xf44]
mov dword [ebp - 0xf3c], 2
push edx
push esi
push 0x1074
mov dword [ebp - 0xf30], 0x4c5da0
push dword [eax + ecx*8 + 4]
call dword [ebp - 0x112c]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5e10
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov ecx, dword [ebp - 0x1138]
mov edi, eax
push 0
push 0x4c5e10
lea ecx, [ecx + 0x130]
call fcn.0041b250
mov edx, dword [ebp - 0x1130]
cmp edx, 0xffffffff
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
cmove edx, esi
mov dword [ebp - 0x1134], eax
test ecx, ecx
je 0x44b4a8
cmp edx, 1
jl 0x44b4a8
cmp edx, esi
jg 0x44b4a8
lea eax, [edx + edx*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44b4a8
cmp dword [ecx + eax*8], 0xf
jne 0x44b4a8
mov edx, dword [ebp - 0x1134]
mov dword [ebp - 0xf6c], edx
lea edx, [ebp - 0xf80]
push edx
push edi
push 0x1074
mov dword [ebp - 0xf78], 1
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x112c]
mov esi, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x1130]
cmp eax, 0xffffffff
cmove eax, esi
test ecx, ecx
je 0x44b510
cmp eax, 1
jl 0x44b510
cmp eax, esi
jg 0x44b510
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x44b510
cmp dword [ecx + eax*8], 0xf
jne 0x44b510
mov esi, dword [ebp - 0x1138]
add esi, 0x130
push 0x4c5e9c
mov ecx, esi
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x44b54e
xorps xmm0, xmm0
movlpd qword [ebp - 0x1178], xmm0
mov edi, dword [ebp - 0x1174]
mov eax, dword [ebp - 0x1178]
jmp 0x44b571
cmp word [esi + 0x10], 8
jne 0x44b56b
push dword [esi + 0x18]
call fcn.0048e08f
add esp, 4
mov edi, edx
jmp 0x44b571
mov eax, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
push edi
push eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x113c], eax
call fcn.00401cb0
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0x4c5ec0
lea ecx, [ebp - 0x310]
call fcn.004160e0
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1128], eax
test esi, esi
jne 0x44b5c5
push 2
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x2c], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], ecx
sub esp, 8
mov byte [ebp - 0x24], 1
lea ecx, [ebp - 0x20]
push edi
push dword [ebp - 0x113c]
call fcn.00402130
mov edi, eax
mov dword [ebp - 0x1140], edi
mov byte [edi + 8], 0
mov ecx, dword [edi + 4]
test ecx, ecx
jne 0x44b610
push ecx
push 0x1c2
push 0x96
lea eax, [edi + 0x2a8]
mov ecx, edi
push eax
push 0
push 0x4c49d8
call fcn.00432b40
xor esi, esi
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x44f5f5
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x44f609
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x1180]
test eax, eax
je 0x44f620
push eax
call fcn.00489ed3
add esp, 4
mov eax, esi
jmp 0x44f64a
push ecx
push 0x1c2
push 0x96
lea eax, [edi + 0x2a8]
mov ecx, edi
push eax
push 0
push 0x4c3bf0
call fcn.00432b40
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00489ec5
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret