Function at 0x42cca0
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49dbd5
mov eax, dword fs:[0]
push eax
sub esp, 0xe0
mov eax, dword [0x4d7200]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x98], ebx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc8], eax
test eax, eax
jns 0x42ccea
xor eax, eax
jmp 0x42ee45
mov esi, dword [ebx + 0xdc]
cmp esi, dword [ebx + 0xfc]
jg 0x42cd17
nop dword [eax + eax]
push 0x40
push esi
lea ecx, [ebx + 0x2a8]
call fcn.00414360
inc esi
cmp esi, dword [ebx + 0xfc]
jle 0x42cd00
mov eax, dword [ebx + 0xd8]
test eax, eax
jne 0x42cd29
mov eax, dword [ebx + 0x4d8]
jmp 0x42cd5d
cmp eax, 0xffffffff
jne 0x42cd34
mov eax, dword [ebx + 0x2e8]
mov edx, dword [ebx + 0x2e4]
test edx, edx
je 0x42cd5b
cmp eax, 1
jl 0x42cd5b
cmp eax, dword [ebx + 0x2e8]
jg 0x42cd5b
lea eax, [eax + eax*8]
cmp dword [edx + eax*8 + 0xc], 0
je 0x42cd5b
mov eax, dword [edx + eax*8 + 4]
jmp 0x42cd5d
xor eax, eax
push 0
push 0
push 0x1009
mov dword [ebp - 0xb8], eax
push eax
mov eax, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x94], eax
call eax
push 3
push dword [ebp - 0xc8]
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push dword [ebx + 0xbc]
lea ecx, [ebx + 0x2a8]
movq qword [ebp - 0x28], xmm0
call fcn.00416470
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov byte [ebp - 0x20], 1
mov dword [ebp - 4], ecx
test eax, eax
je 0x42cdea
cmp word [eax], cx
je 0x42cdc8
nop word [eax + eax]
inc ecx
cmp word [eax + ecx*2], 0
jne 0x42cdc0
mov dword [ebp - 0x24], ecx
test ecx, ecx
jle 0x42cdea
push eax
mov byte [ebp - 0x20], 1
call fcn.0048e09c
mov ecx, dword [ebp - 0x24]
add esp, 4
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x28]
jmp 0x42cdf4
mov dword [ebp - 0xc0], 0
mov byte [ebp - 0x20], 0
test ecx, ecx
jne 0x42ce10
test eax, eax
je 0x42ce0d
cmp word [eax], cx
je 0x42ce0d
inc ecx
cmp word [eax + ecx*2], 0
jne 0x42ce05
mov dword [ebp - 0x24], ecx
xor eax, eax
inc eax
cmp word [eax*2 + str.SELECT__FROM_MSFT_Disk_WHERE_Number_], 0
jne 0x42ce12
add eax, ecx
mov edx, 2
mov dword [ebp - 0xa0], eax
xor ecx, ecx
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
mov ebx, eax
mov edi, str.SELECT__FROM_MSFT_Disk_WHERE_Number_
add esp, 4
mov ecx, ebx
mov esi, 0x53
sub edi, ebx
mov word [ecx], si
add ecx, 2
movzx eax, word [edi + ecx]
mov esi, eax
test ax, ax
jne 0x42ce53
cmp dword [ebp - 0x28], 0
je 0x42ce85
movzx eax, word [edx]
mov esi, eax
test ax, ax
je 0x42ce85
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42ce74
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42ce9a
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 1
mov ebx, dword [ebp - 0x98]
lea eax, [ebp - 0x48]
push eax
push 0
mov byte [ebp - 4], 1
mov edx, dword [ebx + 0x138]
mov ecx, dword [ebx + 0x130]
push 0
push 0x4c2038
mov dword [ebp - 0x48], 0
call fcn.0041a920
mov ecx, ebx
call fcn.0042ee70
push dword [ebp - 0xc0]
lea ecx, [ebp - 0x28]
call fcn.00401e50
mov edi, eax
mov esi, dword [edi + 4]
mov byte [edi + 8], 0
test esi, esi
jne 0x42cf11
mov eax, dword [edi]
test eax, eax
je 0x42cf0e
cmp word [eax], si
je 0x42cf0e
inc esi
cmp word [eax + esi*2], 0
jne 0x42cf06
mov dword [edi + 4], esi
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c2048], 0
jne 0x42cf13
add esi, eax
xor ecx, ecx
mov edx, 2
mov dword [ebp - 0xa0], esi
lea eax, [esi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [edi]
mov esi, 0x4c2048
add esp, 4
mov dword [ebp - 0xa4], eax
mov ecx, eax
mov ebx, 0x53
sub esi, eax
nop dword [eax]
mov word [ecx], bx
add ecx, 2
movzx eax, word [esi + ecx]
mov ebx, eax
test ax, ax
jne 0x42cf60
cmp dword [edi], 0
mov esi, dword [ebp - 0xa0]
je 0x42cf97
movzx eax, word [edx]
mov ebx, eax
test ax, ax
je 0x42cf97
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42cf86
xor eax, eax
mov word [ecx], ax
mov eax, dword [edi]
test eax, eax
je 0x42cfab
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xa4]
mov dword [edi], eax
mov dword [edi + 4], esi
mov byte [edi + 8], 1
mov edi, dword [ebp - 0x28]
test edi, edi
jne 0x42cfd9
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov word [eax], cx
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
mov ebx, dword [ebp - 0x98]
mov byte [ebp - 0x20], 1
cmp byte [ebx + 0x188], 0
jne 0x42cffc
mov ecx, dword [ebx + 0x170]
test ecx, ecx
je 0x42cffc
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebx + 0x170], 0
mov edx, edi
mov ecx, dword [ebx + 0x168]
call fcn.0041a6c0
mov ecx, dword [ebx + 0x16c]
mov esi, eax
test ecx, ecx
je 0x42d025
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
test esi, esi
mov dword [ebx + 0x16c], esi
mov byte [ebx + 0x188], 0
setne al
cmp dword [ebx + 0x16c], 0
mov byte [ebx + 0x198], al
jne 0x42d04d
xor ebx, ebx
jmp 0x42ee22
push 4
push dword [ebp - 0xc8]
lea ecx, [ebx + 0x2a8]
push dword [ebx + 0xbc]
call fcn.00416470
mov edi, eax
lea esi, [ebx + 0x1e4]
test edi, edi
jne 0x42d07c
push eax
mov ecx, esi
call fcn.00401860
jmp 0x42d098
mov eax, dword [esi]
test eax, eax
je 0x42d08b
push eax
call fcn.00489f13
add esp, 4
mov dword [esi], edi
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov ecx, esi
call fcn.00401fd0
push 5
push dword [ebp - 0xc8]
mov esi, ebx
mov dword [ebp - 0xa8], eax
xorps xmm0, xmm0
mov dword [ebp - 0xd0], edx
movq qword [ebp - 0x34], xmm0
mov dword [ebp - 0x2c], 0
push dword [esi + 0xbc]
lea ecx, [esi + 0x2a8]
call fcn.00416470
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x2c], 1
xorps xmm0, xmm0
mov dword [ebp - 0x3c], 0
movq qword [ebp - 0x44], xmm0
xor eax, eax
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], eax
mov byte [ebp - 0x3c], 1
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 4
call fcn.00402080
xor ecx, ecx
mov dword [ebp - 0xe8], eax
xor eax, eax
mov dword [ebp - 0xbc], 0
lea edi, [esi + 0x168]
mov dword [ebp - 0xd8], ecx
mov dword [ebp - 0x1c], 0x3a0000
mov word [ebp - 0x18], ax
mov dword [ebp - 0x9c], edi
nop
cmp byte [esi + 0x188], 0
je 0x42d153
mov dword [esi + 0x170], 0
mov ecx, dword [esi + 0x16c]
test ecx, ecx
jne 0x42d161
xor esi, esi
jmp 0x42d184
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
push edx
lea edx, [ebp - 0x4c]
mov dword [ebp - 0x4c], 0
push edx
push 1
push 0xffffffffffffffff
push ecx
mov dword [ebp - 0x38], 0
call dword [eax + 0x10]
mov esi, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x98]
mov ecx, dword [ebx + 0x170]
test ecx, ecx
je 0x42d19a
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebx + 0x170], esi
test esi, esi
mov esi, ebx
mov byte [ebx + 0x188], 0
setne al
cmp dword [esi + 0x170], 0
mov byte [esi + 0x198], al
je 0x42e3a3
push 0x4c20ac
mov ecx, edi
call fcn.0041b0e0
cmp byte [edi + 0x30], 0
jne 0x42d1d7
xor eax, eax
jmp 0x42d1ee
cmp word [edi + 0x10], 8
jne 0x42d1eb
push dword [edi + 0x18]
call fcn.0048e09c
add esp, 4
jmp 0x42d1ee
mov eax, dword [edi + 0x18]
cmp eax, dword [ebp - 0xc0]
jne 0x42d140
push 0x4c20c4
mov ecx, edi
call fcn.0041b0e0
cmp byte [edi + 0x30], 0
jne 0x42d210
xor ebx, ebx
jmp 0x42d22f
cmp word [edi + 0x10], 8
jne 0x42d22c
push dword [edi + 0x18]
call fcn.0048e09c
add esp, 4
mov dword [ebp - 0xe0], eax
mov ebx, eax
jmp 0x42d235
mov ebx, dword [edi + 0x18]
mov dword [ebp - 0xe0], ebx
push 0
push ebx
push dword [ebp - 0xc0]
mov ecx, esi
call fcn.0042f1e0
push ebx
lea ecx, [ebp - 0x34]
mov dword [ebp - 0xc4], eax
call fcn.00401f30
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x42d281
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x34], eax
xor ecx, ecx
mov word [eax], cx
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], ecx
mov byte [ebp - 0x20], cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x34]
jmp 0x42d296
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x28], 0
mov byte [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov edi, ecx
mov byte [ebp - 0x2c], 1
mov esi, 0x4bffa0
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x90], esi
xor edx, edx
nop
inc edx
cmp word [edx*2 + 0x4c20e4], 0
jne 0x42d2b0
test ecx, ecx
jne 0x42d2ce
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], edi
jmp 0x42d2eb
xor eax, eax
cmp word [ecx], ax
je 0x42d2e9
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], edi
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d2e1
add edx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bffa0], 0
jne 0x42d2f0
add edx, eax
xor ecx, ecx
mov dword [ebp - 0xa4], edx
lea eax, [edx + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp - 0xa0], eax
mov edi, esi
mov esi, dword [ebp - 0x8c]
mov ecx, eax
mov dword [ebp - 0xd4], ebx
test edx, edx
je 0x42d368
movzx eax, word [edx]
mov edi, dword [ebp - 0x90]
mov dword [ebp - 0xd4], ebx
test ax, ax
je 0x42d368
mov dword [ebp - 0xd4], ebx
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d357
mov ebx, 0x4c20e4
mov edx, 0x50
sub ebx, ecx
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + ebx]
mov edx, eax
test ax, ax
jne 0x42d374
test esi, esi
je 0x42d3a4
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x42d3a4
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x42d393
mov eax, 0x20
nop dword [eax]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
lea ecx, [ecx + 2]
test ax, ax
jne 0x42d3b0
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42d3d6
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xd4]
mov byte [ebp - 0x20], 1
test eax, eax
je 0x42d3ff
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xe8]
cmp eax, 2
jne 0x42d842
mov ecx, dword [ebp - 0x9c]
push 3
push 0x4c1df8
call fcn.0041b1c0
push eax
lea ecx, [ebp - 0x44]
call fcn.00401860
mov eax, dword [ebp - 0x44]
cmp eax, 0x4bf950
je 0x42d45c
test eax, eax
je 0x42d567
mov esi, 0x4bf950
mov ebx, eax
sub ebx, esi
movzx eax, word [ebx + esi]
mov ecx, eax
test ax, ax
jne 0x42d51f
cmp word [esi], ax
jne 0x42d524
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d47e
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d47b
cmp word [ecx], ax
je 0x42d47b
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d473
mov dword [ebp - 0x24], eax
xor ecx, ecx
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c20e8], 0
jne 0x42d480
lea edi, [ecx + eax]
mov edx, 2
xor ecx, ecx
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d4d3
movzx esi, word [edx]
test si, si
je 0x42d4d3
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d4c2
mov esi, 0x4c20e8
mov edx, 0x5b
sub esi, ecx
nop
mov word [ecx], dx
lea ecx, [ecx + 2]
movzx eax, word [ecx + esi]
mov edx, eax
test ax, ax
jne 0x42d4e0
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42d506
push eax
call fcn.00489f13
add esp, 4
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], 1
mov dword [ebp - 0xd8], 1
jmp 0x42d888
cmp ax, word [esi]
je 0x42d55c
xor edx, edx
cmp dx, ax
jne 0x42d52f
xor edi, edi
jmp 0x42d53b
push ecx
call fcn.0048e184
add esp, 4
movzx edi, ax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x42d54b
xor eax, eax
jmp 0x42d557
push ecx
call fcn.0048e184
add esp, 4
movzx eax, ax
cmp di, ax
jne 0x42d564
add esi, 2
jmp 0x42d444
mov eax, dword [ebp - 0x44]
cmp eax, 0x4bf9a0
je 0x42d598
test eax, eax
je 0x42d67e
mov esi, 0x4bf9a0
mov ebx, eax
sub ebx, esi
nop
movzx eax, word [ebx + esi]
mov ecx, eax
test ax, ax
jne 0x42d636
cmp word [esi], ax
jne 0x42d63b
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d5bb
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d5b8
cmp word [ecx], ax
je 0x42d5b8
nop
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d5b0
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c20f8], 0
jne 0x42d5c0
lea edi, [ecx + eax]
mov edx, 2
xor ecx, ecx
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d613
movzx esi, word [edx]
test si, si
je 0x42d613
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d602
mov esi, 0x4c20f8
mov edx, 0x5b
sub esi, ecx
nop
mov word [ecx], dx
lea ecx, [ecx + 2]
movzx eax, word [ecx + esi]
mov edx, eax
test ax, ax
jne 0x42d620
jmp 0x42d821
cmp ax, word [esi]
je 0x42d673
xor edx, edx
cmp dx, ax
jne 0x42d646
xor edi, edi
jmp 0x42d652
push ecx
call fcn.0048e184
add esp, 4
movzx edi, ax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x42d662
xor eax, eax
jmp 0x42d66e
push ecx
call fcn.0048e184
add esp, 4
movzx eax, ax
cmp di, ax
jne 0x42d67b
add esi, 2
jmp 0x42d580
mov eax, dword [ebp - 0x44]
cmp eax, 0x4bfae0
je 0x42d6ae
test eax, eax
je 0x42d78c
mov esi, 0x4bfae0
mov ebx, eax
sub ebx, esi
movzx eax, word [ebx + esi]
mov ecx, eax
test ax, ax
jne 0x42d747
cmp word [esi], ax
jne 0x42d74c
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d6d0
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d6cd
cmp word [ecx], ax
je 0x42d6cd
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d6c5
mov dword [ebp - 0x24], eax
xor ecx, ecx
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c2108], 0
jne 0x42d6d2
lea edi, [eax + ecx]
mov edx, 2
xor ecx, ecx
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d725
movzx esi, word [edx]
test si, si
je 0x42d725
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d714
mov esi, 0x4c2108
mov edx, 0x5b
sub esi, ecx
mov word [ecx], dx
lea ecx, [ecx + 2]
movzx eax, word [esi + ecx]
mov edx, eax
test ax, ax
jne 0x42d731
jmp 0x42d821
cmp ax, word [esi]
je 0x42d784
xor edx, edx
cmp dx, ax
jne 0x42d757
xor edi, edi
jmp 0x42d763
push ecx
call fcn.0048e184
add esp, 4
movzx edi, ax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x42d773
xor eax, eax
jmp 0x42d77f
push ecx
call fcn.0048e184
add esp, 4
movzx eax, ax
cmp di, ax
jne 0x42d78c
add esi, 2
jmp 0x42d696
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d7ae
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d7ab
cmp word [ecx], ax
je 0x42d7ab
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d7a3
mov dword [ebp - 0x24], eax
xor ecx, ecx
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c2120], 0
jne 0x42d7b0
lea edi, [eax + ecx]
mov edx, 2
xor ecx, ecx
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d803
movzx esi, word [edx]
test si, si
je 0x42d803
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d7f2
mov esi, 0x4c2120
mov edx, 0x5b
sub esi, ecx
nop
mov word [ecx], dx
lea ecx, [ecx + 2]
movzx eax, word [ecx + esi]
mov edx, eax
test ax, ax
jne 0x42d810
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42d836
push eax
call fcn.00489f13
add esp, 4
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], 1
jmp 0x42d888
cmp eax, 1
jne 0x42d888
mov esi, dword [ebp - 0x9c]
mov ecx, esi
push 0x4c2130
call fcn.0041b0e0
cmp byte [esi + 0x30], 0
je 0x42d888
cmp word [esi + 0x10], 8
mov eax, dword [esi + 0x18]
jne 0x42d872
push eax
call fcn.0048e09c
add esp, 4
mov ecx, dword [ebp - 0xd8]
test eax, eax
mov eax, 1
cmovne ecx, eax
mov dword [ebp - 0xd8], ecx
mov ebx, dword [ebp - 0xc4]
test ebx, ebx
je 0x42d8ac
mov ecx, dword [ebp - 0x98]
push 3
push 0x4c2144
add ecx, 0x1a0
call fcn.0041b1c0
jmp 0x42d8b1
mov eax, 0x4c215c
push eax
lea ecx, [ebp - 0x34]
call fcn.00401860
cmp dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x34]
jne 0x42d8e9
test esi, esi
jne 0x42d8cf
mov dword [ebp - 0x30], esi
jmp 0x42da48
xor eax, eax
cmp word [esi], ax
je 0x42d8de
inc eax
cmp word [esi + eax*2], 0
jne 0x42d8d6
mov dword [ebp - 0x30], eax
test eax, eax
je 0x42da48
mov ebx, 0x4c2164
test esi, esi
jne 0x42d90a
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x34], eax
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x2c], 1
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d930
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d92d
cmp word [ecx], ax
je 0x42d92d
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d925
mov dword [ebp - 0x24], eax
xor ecx, ecx
inc ecx
cmp word [ecx*2 + 0x4bfc78], 0
jne 0x42d932
add ecx, eax
test esi, esi
je 0x42d95a
xor eax, eax
cmp word [esi], ax
je 0x42d958
nop dword [eax + eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x42d950
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c2164], 0
jne 0x42d960
add ecx, eax
mov edx, 2
mov dword [ebp - 0xa4], ecx
lea eax, [ecx + 1]
xor ecx, ecx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp - 0xa0], eax
mov ecx, eax
test edx, edx
je 0x42d9c1
movzx edi, word [edx]
test di, di
je 0x42d9c1
mov eax, edi
nop dword [eax]
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d9b0
mov edi, 0x4bfc78
mov edx, 0x5b
sub edi, ecx
nop dword [eax]
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + edi]
mov edx, eax
test ax, ax
jne 0x42d9d0
test esi, esi
je 0x42da01
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x42da01
nop
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x42d9f0
mov eax, 0x5d
mov word [ecx], ax
lea ebx, [ebx + 2]
movzx eax, word [ebx]
lea ecx, [ecx + 2]
test ax, ax
jne 0x42da06
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42da2c
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xa0]
mov ebx, dword [ebp - 0xc4]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 1
mov esi, dword [ebp - 0x9c]
mov ecx, esi
push 0x4c216c
call fcn.0041b0e0
cmp byte [esi + 0x30], 0
jne 0x42da7f
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov ecx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xd4], ecx
jmp 0x42daab
cmp word [esi + 0x10], 8
jne 0x42da9f
push dword [esi + 0x18]
call fcn.0048e0bf
add esp, 4
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x8c], edx
jmp 0x42dab1
mov eax, dword [esi + 0x18]
mov dword [ebp - 0xd4], eax
mov eax, dword [esi + 0x1c]
mov dword [ebp - 0x8c], eax
test ebx, ebx
je 0x42dba0
mov esi, dword [ebp - 0x98]
add esi, 0x1a0
push 0x4c047c
mov ecx, esi
call fcn.0041b0e0
cmp byte [esi + 0x30], 0
jne 0x42daf0
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov ebx, dword [ebp - 0xb0]
mov edi, dword [ebp - 0xb4]
jmp 0x42db0e
cmp word [esi + 0x10], 8
jne 0x42db08
push dword [esi + 0x18]
call fcn.0048e0bf
add esp, 4
mov edi, eax
mov ebx, edx
jmp 0x42db0e
mov edi, dword [esi + 0x18]
mov ebx, dword [esi + 0x1c]
mov esi, dword [ebp - 0x98]
add esi, 0x1a0
push 0x4c217c
mov ecx, esi
call fcn.0041b0e0
cmp byte [esi + 0x30], 0
jne 0x42db45
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xb4]
jmp 0x42db5f
cmp word [esi + 0x10], 8
jne 0x42db59
push dword [esi + 0x18]
call fcn.0048e0bf
add esp, 4
jmp 0x42db5f
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov esi, edi
mov ecx, ebx
sub esi, eax
mov eax, edi
mov dword [ebp - 0xc4], esi
sbb ecx, edx
or eax, ebx
mov dword [ebp - 0xe4], ecx
je 0x42dbc3
mov eax, ecx
mov edx, 0x64
mul edx
mov edx, 0x64
mov ecx, eax
mov eax, esi
mul edx
push ebx
push edi
add ecx, edx
push ecx
push eax
call fcn.0049ac00
mov dword [ebp - 0xa4], edx
jmp 0x42dbe0
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0xc4], eax
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xb4]
mov ebx, dword [ebp - 0x9c]
mov ecx, ebx
push 0x4c047c
mov dword [ebp - 0xa0], eax
call fcn.0041b0e0
cmp byte [ebx + 0x30], 0
jne 0x42dc17
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xb4]
jmp 0x42dc35
cmp word [ebx + 0x10], 8
jne 0x42dc2f
push dword [ebx + 0x18]
call fcn.0048e0bf
mov ecx, eax
add esp, 4
mov eax, edx
jmp 0x42dc35
mov ecx, dword [ebx + 0x18]
mov eax, dword [ebx + 0x1c]
sub esp, 8
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0xdc], eax
push eax
push ecx
lea ecx, [ebp - 0x34]
call fcn.00402130
mov edi, dword [ebp - 0x34]
test edi, edi
jne 0x42dc6d
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x34], eax
xor ecx, ecx
mov word [eax], cx
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x24]
mov edx, 1
mov ecx, dword [ebp - 0x28]
mov byte [ebp - 0x2c], 1
test eax, eax
jne 0x42dc9b
xor eax, eax
test ecx, ecx
je 0x42dc98
cmp word [ecx], ax
je 0x42dc98
nop dword [eax + eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42dc90
mov dword [ebp - 0x24], eax
cmp eax, 1
cmovle edx, eax
test eax, eax
je 0x42dcb6
sub eax, edx
xor edx, edx
mov dword [ebp - 0x24], eax
mov word [ecx + eax*2], dx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42dcd2
test ecx, ecx
je 0x42dccf
cmp word [ecx], ax
je 0x42dccf
inc eax
cmp word [ecx + eax*2], 0
jne 0x42dcc7
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
nop dword [eax + eax]
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4bffa8], 0
jne 0x42dce0
lea ebx, [ecx + eax]
test edi, edi
je 0x42dd0a
xor eax, eax
cmp word [edi], ax
je 0x42dd08
nop dword [eax]
inc eax
cmp word [edi + eax*2], 0
jne 0x42dd00
add ebx, eax
xor ecx, ecx
lea eax, [ebx + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp - 0xcc], eax
mov ecx, eax
test edx, edx
je 0x42dd51
movzx esi, word [edx]
test si, si
je 0x42dd51
mov eax, esi
nop
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42dd40
mov edx, 0x4bffa8
mov esi, 0x2c
sub edx, ecx
nop dword [eax]
mov word [ecx], si
add ecx, 2
movzx eax, word [ecx + edx]
mov esi, eax
test ax, ax
jne 0x42dd60
test edi, edi
je 0x42dd91
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x42dd91
nop
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42dd80
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42dda6
push eax
call fcn.00489f13
add esp, 4
push dword [ebp - 0xa4]
mov eax, dword [ebp - 0xcc]
lea ecx, [ebp - 0x34]
push dword [ebp - 0xa0]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
mov byte [ebp - 0x20], 1
mov dword [ebp - 0xcc], 0x4c1c74
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42ddef
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edi, dword [esi]
mov byte [esi + 8], 1
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42de1b
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42de18
cmp word [ecx], ax
je 0x42de18
nop dword [eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42de10
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp word [ecx*2 + 0x4bffa8], 0
jne 0x42de20
add ecx, eax
test edi, edi
je 0x42de4a
xor eax, eax
cmp word [edi], ax
je 0x42de48
nop dword [eax]
inc eax
cmp word [edi + eax*2], 0
jne 0x42de40
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c1c74], 0
jne 0x42de50
add ecx, eax
mov edx, 2
mov dword [ebp - 0xa4], ecx
lea eax, [ecx + 1]
xor ecx, ecx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
mov ebx, eax
add esp, 4
mov dword [ebp - 0xa0], ebx
mov ecx, ebx
test edx, edx
je 0x42deb1
movzx esi, word [edx]
test si, si
je 0x42deb1
mov eax, esi
nop dword [eax + eax]
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42dea0
mov edx, 0x4bffa8
mov esi, 0x2c
sub edx, ecx
nop dword [eax]
mov word [ecx], si
add ecx, 2
movzx eax, word [edx + ecx]
mov esi, eax
test ax, ax
jne 0x42dec0
test edi, edi
je 0x42def1
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x42def1
nop
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42dee0
mov ebx, dword [ebp - 0xcc]
mov eax, 0x25
nop dword [eax]
mov word [ecx], ax
lea ebx, [ebx + 2]
movzx eax, word [ebx]
lea ecx, [ecx + 2]
test ax, ax
jne 0x42df00
mov ebx, dword [ebp - 0xa0]
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42df2c
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xa4]
mov esi, dword [ebp - 0x9c]
mov ecx, esi
push 0x4c2198
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 1
call fcn.0041b0e0
cmp byte [esi + 0x30], 0
jne 0x42df58
xor eax, eax
jmp 0x42df6f
cmp word [esi + 0x10], 8
jne 0x42df6c
push dword [esi + 0x18]
call fcn.0048e09c
add esp, 4
jmp 0x42df6f
mov eax, dword [esi + 0x18]
movzx eax, ax
mov dword [ebp - 0xcc], eax
mov word [ebp - 0x1c], ax
test ax, ax
je 0x42e0ce
mov eax, dword [ebp - 0x24]
lea ebx, [ebp - 0x1c]
mov dword [ebp - 0xa0], 0x4bfc74
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42dfbb
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42dfb8
cmp word [ecx], ax
je 0x42dfb8
nop dword [eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42dfb0
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp word [ecx*2 + 0x4c21b0], 0
jne 0x42dfc0
add ecx, eax
xor eax, eax
inc eax
cmp word [ebp + eax*2 - 0x1c], 0
jne 0x42dfd0
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bfc74], 0
jne 0x42dfe0
add ecx, eax
mov edx, 2
mov dword [ebp - 0xb0], ecx
lea eax, [ecx + 1]
xor ecx, ecx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edx, dword [ebp - 0x28]
mov edi, eax
add esp, 4
mov dword [ebp - 0xa4], edi
mov ecx, edi
test edx, edx
je 0x42e041
movzx esi, word [edx]
test si, si
je 0x42e041
mov eax, esi
nop dword [eax + eax]
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42e030
mov edx, 0x4c21b0
mov esi, 0x20
sub edx, ecx
nop dword [eax]
mov word [ecx], si
add ecx, 2
movzx eax, word [edx + ecx]
mov esi, eax
test ax, ax
jne 0x42e050
mov eax, dword [ebp - 0xcc]
movzx eax, ax
nop word [eax + eax]
mov word [ecx], ax
lea ebx, [ebx + 2]
movzx eax, word [ebx]
add ecx, 2
test ax, ax
jne 0x42e070
mov edi, dword [ebp - 0xa0]
mov eax, 0x29
nop dword [eax]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42e090
mov edi, dword [ebp - 0xa4]
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42e0bc
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 1
jmp 0x42e0d1
mov edi, dword [ebp - 0x28]
test edi, edi
jne 0x42e0ed
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov word [eax], cx
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
mov ebx, dword [ebp - 0x98]
push ecx
mov byte [ebp - 0x20], 1
push dword [ebx + 0xd8]
lea ecx, [ebx + 0x2a8]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push edi
call fcn.004160e0
push dword [ebp - 0x8c]
lea ecx, [ebp - 0x28]
mov edi, eax
push dword [ebp - 0xd4]
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42e143
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42e15a
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e1a2
cmp eax, 1
jl 0x42e1a2
cmp eax, dword [ebx + 0x2e8]
jg 0x42e1a2
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e1a2
cmp dword [ecx + eax*8], 0xf
jne 0x42e1a2
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 1
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x94]
mov ebx, dword [ebp - 0xdc]
lea ecx, [ebp - 0x28]
push ebx
push dword [ebp - 0x90]
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42e1d2
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov esi, dword [ebp - 0x98]
mov eax, dword [esi + 0xd8]
cmp eax, 0xffffffff
jne 0x42e1ef
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e237
cmp eax, 1
jl 0x42e237
cmp eax, dword [esi + 0x2e8]
jg 0x42e237
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e237
cmp dword [ecx + eax*8], 0xf
jne 0x42e237
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 2
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x94]
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x34]
push dword [ebp - 0xc4]
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42e266
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov esi, dword [ebp - 0x98]
mov eax, dword [esi + 0xd8]
cmp eax, 0xffffffff
jne 0x42e283
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e2cb
cmp eax, 1
jl 0x42e2cb
cmp eax, dword [esi + 0x2e8]
jg 0x42e2cb
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e2cb
cmp dword [ecx + eax*8], 0xf
jne 0x42e2cb
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 3
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x94]
push dword [ebp - 0xe0]
lea ecx, [ebp - 0x34]
call fcn.00401f30
mov esi, eax
cmp dword [esi], 0
jne 0x42e2f4
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov esi, dword [ebp - 0x98]
mov eax, dword [esi + 0xd8]
cmp eax, 0xffffffff
jne 0x42e311
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e359
cmp eax, 1
jl 0x42e359
cmp eax, dword [esi + 0x2e8]
jg 0x42e359
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e359
cmp dword [ecx + eax*8], 0xf
jne 0x42e359
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 4
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x94]
push dword [ebp - 0xd0]
mov ecx, esi
push dword [ebp - 0xa8]
push dword [ebp - 0xe4]
push dword [ebp - 0xc4]
push ebx
push dword [ebp - 0x90]
push dword [ebp - 0x8c]
push dword [ebp - 0xd4]
push edi
push dword [esi + 0xd8]
call fcn.00432660
inc dword [ebp - 0xbc]
lea edi, [esi + 0x168]
jmp 0x42d140
mov ecx, dword [ebp - 0xb8]
mov edx, 1
push 1
call fcn.0040aea0
cmp dword [ebp - 0xd8], 0
je 0x42e420
mov eax, dword [esi + 0xbc]
cmp eax, 0xffffffff
jne 0x42e3cf
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e420
cmp eax, 1
jl 0x42e420
cmp eax, dword [esi + 0x2e8]
jg 0x42e420
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e420
cmp dword [ecx + eax*8], 0xf
jne 0x42e420
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 6
push edx
push dword [ebp - 0xc8]
mov dword [ebp - 0x74], 0x4c1fe0
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x94]
mov ebx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xa8]
test ebx, ebx
jne 0x42e875
mov edi, dword [ebp - 0xd0]
test edi, edi
jne 0x42e44a
cmp edx, 0x100000
jbe 0x42e875
sub esp, 8
lea ecx, [ebp - 0x34]
push edi
push edx
call fcn.00402130
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x42e484
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x34], eax
xor ecx, ecx
mov word [eax], cx
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], ecx
mov byte [ebp - 0x20], cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x34]
jmp 0x42e499
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x28], 0
mov byte [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov edi, ecx
mov dword [ebp - 0x9c], ebx
mov edx, 0x4bfc74
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x90], edx
xor esi, esi
mov byte [ebp - 0x2c], 1
nop dword [eax + eax]
inc esi
cmp word [esi*2 + 0x4c21b8], 0
jne 0x42e4c0
test ecx, ecx
jne 0x42e4e4
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], edi
jmp 0x42e50a
xor eax, eax
cmp word [ecx], ax
je 0x42e508
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], edi
nop dword [eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42e500
add esi, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bfc74], 0
jne 0x42e510
add esi, eax
xor ecx, ecx
mov edx, 2
mov dword [ebp - 0xb0], esi
lea eax, [esi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edi, dword [ebp - 0x28]
add esp, 4
mov edx, dword [ebp - 0x8c]
mov ecx, eax
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb8], ebx
mov ebx, eax
test edi, edi
je 0x42e5a1
mov edx, dword [ebp - 0x9c]
movzx eax, word [edi]
mov dword [ebp - 0xb8], edx
mov edx, dword [ebp - 0x8c]
test ax, ax
je 0x42e5a1
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0xb8], edx
mov edx, dword [ebp - 0x8c]
nop
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42e590
mov esi, 0x4c21b8
mov edi, 0x55
sub esi, ecx
nop dword [eax]
mov word [ecx], di
add ecx, 2
movzx eax, word [esi + ecx]
mov edi, eax
test ax, ax
jne 0x42e5b0
mov esi, dword [ebp - 0xb0]
test edx, edx
je 0x42e5e6
movzx eax, word [edx]
mov edi, eax
test ax, ax
je 0x42e5e6
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42e5d5
mov eax, 0x29
nop dword [eax + eax]
mov word [ecx], ax
lea ebx, [ebx + 2]
movzx eax, word [ebx]
lea ecx, [ecx + 2]
test ax, ax
jne 0x42e5f0
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42e616
push eax
call fcn.00489f13
add esp, 4
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x20], 1
test ecx, ecx
je 0x42e63c
push ecx
call fcn.00489f13
mov eax, dword [ebp - 0x28]
add esp, 4
test eax, eax
jne 0x42e658
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov word [eax], cx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
mov ebx, dword [ebp - 0x98]
push ecx
mov byte [ebp - 0x20], 1
push dword [ebx + 0xd8]
lea ecx, [ebx + 0x2a8]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0
push eax
call fcn.004160e0
push 0
push 0x100000
lea ecx, [ebp - 0x28]
mov edi, eax
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42e6a9
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42e6c0
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e708
cmp eax, 1
jl 0x42e708
cmp eax, dword [ebx + 0x2e8]
jg 0x42e708
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e708
cmp dword [ecx + eax*8], 0xf
jne 0x42e708
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 1
push dword [ecx + eax*8 + 4]
call dword [ebp - 0x94]
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xd0]
add eax, 0xfff00000
adc ecx, 0xffffffff
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42e741
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42e758
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e7a4
cmp eax, 1
jl 0x42e7a4
cmp eax, dword [ebx + 0x2e8]
jg 0x42e7a4
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e7a4
cmp dword [ecx + eax*8], 0xf
mov esi, dword [ebp - 0x94]
jne 0x42e7aa
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 2
push dword [ecx + eax*8 + 4]
call esi
jmp 0x42e7aa
mov esi, dword [ebp - 0x94]
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42e7bb
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e803
cmp eax, 1
jl 0x42e803
cmp eax, dword [ebx + 0x2e8]
jg 0x42e803
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e803
cmp dword [ecx + eax*8], 0xf
jne 0x42e803
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 3
push edx
push edi
push 0x1074
mov dword [ebp - 0x74], 0x4bfc90
push dword [ecx + eax*8 + 4]
call esi
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42e814
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42edfc
cmp eax, 1
jl 0x42edfc
cmp eax, dword [ebx + 0x2e8]
jg 0x42edfc
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42edfc
cmp dword [ecx + eax*8], 0xf
jne 0x42edfc
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 4
push edx
push edi
push 0x1074
mov dword [ebp - 0x74], 0x4c21e0
push dword [ecx + eax*8 + 4]
call esi
jmp 0x42edfc
lea eax, [ebx - 1]
mov dword [ebp - 0xc8], eax
cmp eax, 0xffffffff
jl 0x42ee02
lea ebx, [esi + 0x1e4]
lea ecx, [esi + 0x2a8]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xc4], ecx
jne 0x42e8d7
mov esi, 0x100000
xor ecx, ecx
xor edi, edi
mov dword [ebp - 0xa0], ecx
mov eax, esi
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xd0], ecx
jb 0x42edfc
ja 0x42e98a
cmp edx, eax
jb 0x42edfc
jmp 0x42e98a
push 1
push eax
push dword [esi + 0xd8]
call fcn.00416470
mov esi, eax
test esi, esi
jne 0x42e8f5
push eax
mov ecx, ebx
call fcn.00401860
jmp 0x42e911
mov eax, dword [ebx]
test eax, eax
je 0x42e904
push eax
call fcn.00489f13
add esp, 4
mov dword [ebx], esi
mov dword [ebx + 4], 0
mov byte [ebx + 8], 1
mov ecx, ebx
call fcn.00401fd0
mov ecx, dword [ebp - 0xc4]
mov esi, eax
mov eax, dword [ebp - 0x98]
mov edi, edx
push 2
push dword [ebp - 0xc8]
push dword [eax + 0xd8]
call fcn.00416470
mov dword [ebp - 0xb0], eax
test eax, eax
jne 0x42e94f
push eax
mov ecx, ebx
call fcn.00401860
jmp 0x42e971
mov eax, dword [ebx]
test eax, eax
je 0x42e95e
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xb0]
mov dword [ebx], eax
mov dword [ebx + 4], 0
mov byte [ebx + 8], 1
mov ecx, ebx
call fcn.00401fd0
add eax, esi
mov ecx, edx
mov dword [ebp - 0xa4], eax
adc ecx, edi
mov dword [ebp - 0xa0], ecx
mov edx, dword [ebp - 0xa8]
sub edx, eax
mov eax, edx
mov edx, esi
sbb dword [ebp - 0xd0], ecx
mov ecx, dword [ebp - 0xd0]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xd0], edi
jne 0x42e9c4
cmp eax, 0x200000
jb 0x42edda
sub esp, 8
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.00402130
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x42e9fe
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x34], eax
xor ecx, ecx
mov word [eax], cx
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], ecx
mov byte [ebp - 0x20], cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x34]
jmp 0x42ea13
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x28], 0
mov byte [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov edi, ecx
mov dword [ebp - 0x9c], ebx
mov edx, 0x4bfc74
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0xc0], edx
xor esi, esi
mov byte [ebp - 0x2c], 1
inc esi
cmp word [esi*2 + 0x4c21b8], 0
jne 0x42ea32
test ecx, ecx
jne 0x42ea56
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0x8c], edi
jmp 0x42ea7a
xor eax, eax
cmp word [ecx], ax
je 0x42ea78
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0x8c], edi
nop
inc eax
cmp word [ecx + eax*2], 0
jne 0x42ea70
add esi, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bfc74], 0
jne 0x42ea80
add esi, eax
xor ecx, ecx
mov edx, 2
mov dword [ebp - 0xb0], esi
lea eax, [esi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a2cb
mov edi, dword [ebp - 0x28]
add esp, 4
mov edx, dword [ebp - 0x8c]
mov ecx, eax
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xb8], ebx
mov ebx, eax
test edi, edi
je 0x42eb11
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0xb8], ebx
mov ebx, eax
movzx eax, word [edi]
test ax, ax
je 0x42eb11
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0xb8], ebx
mov ebx, dword [ebp - 0xc0]
nop dword [eax + eax]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42eb00
mov esi, 0x4c21b8
mov edi, 0x55
sub esi, ecx
nop dword [eax]
mov word [ecx], di
add ecx, 2
movzx eax, word [ecx + esi]
mov edi, eax
test ax, ax
jne 0x42eb20
mov esi, dword [ebp - 0xb0]
test edx, edx
je 0x42eb56
movzx eax, word [edx]
mov edi, eax
test ax, ax
je 0x42eb56
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42eb45
mov eax, 0x29
nop dword [eax + eax]
mov word [ecx], ax
lea ebx, [ebx + 2]
movzx eax, word [ebx]
lea ecx, [ecx + 2]
test ax, ax
jne 0x42eb60
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42eb86
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x20], 1
test eax, eax
je 0x42ebac
push eax
call fcn.00489f13
mov ecx, dword [ebp - 0x28]
add esp, 4
test ecx, ecx
jne 0x42ebc8
push 2
call fcn.0048a2cb
add esp, 4
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov word [eax], cx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x98]
mov eax, dword [ebp - 0xc8]
push ecx
inc eax
mov byte [ebp - 0x20], 1
push dword [ebx + 0xd8]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push 0
push ecx
mov ecx, dword [ebp - 0xc4]
call fcn.004160e0
push dword [ebp - 0xa0]
lea ecx, [ebp - 0x28]
mov edi, eax
push dword [ebp - 0xa4]
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42ec24
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42ec3b
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42ec87
cmp eax, 1
jl 0x42ec87
cmp eax, dword [ebx + 0x2e8]
jg 0x42ec87
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ec87
cmp dword [ecx + eax*8], 0xf
mov ebx, dword [ebp - 0x94]
jne 0x42ec8d
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 1
push dword [ecx + eax*8 + 4]
call ebx
jmp 0x42ec8d
mov ebx, dword [ebp - 0x94]
push dword [ebp - 0xe8]
lea ecx, [ebp - 0x28]
push dword [ebp - 0x38]
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42ecb9
push 2
call fcn.0048a2cb
add esp, 4
mov dword [esi], eax
xor ecx, ecx
mov word [eax], cx
mov dword [esi + 4], ecx
mov edx, dword [esi]
mov byte [esi + 8], 1
mov esi, dword [ebp - 0x98]
mov eax, dword [esi + 0xd8]
cmp eax, 0xffffffff
jne 0x42ecd6
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42ed1a
cmp eax, 1
jl 0x42ed1a
cmp eax, dword [esi + 0x2e8]
jg 0x42ed1a
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ed1a
cmp dword [ecx + eax*8], 0xf
jne 0x42ed1a
mov dword [ebp - 0x74], edx
lea edx, [ebp - 0x88]
push edx
push edi
push 0x1074
mov dword [ebp - 0x80], 2
push dword [ecx + eax*8 + 4]
call ebx
mov eax, dword [esi + 0xd8]
cmp eax, 0xffffffff
jne 0x42ed2b
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42ed73
cmp eax, 1
jl 0x42ed73
cmp eax, dword [esi + 0x2e8]
jg 0x42ed73
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ed73
cmp dword [ecx + eax*8], 0xf
jne 0x42ed73
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 3
push edx
push edi
push 0x1074
mov dword [ebp - 0x74], 0x4bfc90
push dword [ecx + eax*8 + 4]
call ebx
mov eax, dword [esi + 0xd8]
cmp eax, 0xffffffff
jne 0x42ed84
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42edcc
cmp eax, 1
jl 0x42edcc
cmp eax, dword [esi + 0x2e8]
jg 0x42edcc
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42edcc
cmp dword [ecx + eax*8], 0xf
jne 0x42edcc
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 4
push edx
push edi
push 0x1074
mov dword [ebp - 0x74], 0x4c21e0
push dword [ecx + eax*8 + 4]
call ebx
mov ebx, dword [ebp - 0x90]
mov edx, dword [ebp - 0xa8]
jmp 0x42ede0
mov esi, dword [ebp - 0x98]
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xc4]
dec eax
mov dword [ebp - 0xc8], eax
cmp eax, 0xffffffff
jge 0x42e89f
mov ebx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x42ee12
push eax
call fcn.00489f13
add esp, 4
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x42ee22
push eax
call fcn.00489f13
add esp, 4
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x42ee33
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42ee43
push ecx
call fcn.00489f13
add esp, 4
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00489f05
mov esp, ebp
pop ebp
ret 4