Function at 0x42cd20
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49d935
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 0x42cd6a
xor eax, eax
jmp 0x42eec5
mov esi, dword [ebx + 0xdc]
cmp esi, dword [ebx + 0xfc]
jg 0x42cd97
nop dword [eax + eax]
push 0x40
push esi
lea ecx, [ebx + 0x2a8]
call fcn.00414360
inc esi
cmp esi, dword [ebx + 0xfc]
jle 0x42cd80
mov eax, dword [ebx + 0xd8]
test eax, eax
jne 0x42cda9
mov eax, dword [ebx + 0x4d8]
jmp 0x42cddd
cmp eax, 0xffffffff
jne 0x42cdb4
mov eax, dword [ebx + 0x2e8]
mov edx, dword [ebx + 0x2e4]
test edx, edx
je 0x42cddb
cmp eax, 1
jl 0x42cddb
cmp eax, dword [ebx + 0x2e8]
jg 0x42cddb
lea eax, [eax + eax*8]
cmp dword [edx + eax*8 + 0xc], 0
je 0x42cddb
mov eax, dword [edx + eax*8 + 4]
jmp 0x42cddd
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 0x42ce6a
cmp word [eax], cx
je 0x42ce48
nop word [eax + eax]
inc ecx
cmp word [eax + ecx*2], 0
jne 0x42ce40
mov dword [ebp - 0x24], ecx
test ecx, ecx
jle 0x42ce6a
push eax
mov byte [ebp - 0x20], 1
call fcn.0048ddfc
mov ecx, dword [ebp - 0x24]
add esp, 4
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x28]
jmp 0x42ce74
mov dword [ebp - 0xc0], 0
mov byte [ebp - 0x20], 0
test ecx, ecx
jne 0x42ce90
test eax, eax
je 0x42ce8d
cmp word [eax], cx
je 0x42ce8d
inc ecx
cmp word [eax + ecx*2], 0
jne 0x42ce85
mov dword [ebp - 0x24], ecx
xor eax, eax
inc eax
cmp word [eax*2 + str.SELECT__FROM_MSFT_Disk_WHERE_Number_], 0
jne 0x42ce92
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.0048a02b
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 0x42ced3
cmp dword [ebp - 0x28], 0
je 0x42cf05
movzx eax, word [edx]
mov esi, eax
test ax, ax
je 0x42cf05
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42cef4
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42cf1a
push eax
call fcn.00489c73
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 0x4c2018
mov dword [ebp - 0x48], 0
call fcn.0041a9b0
mov ecx, ebx
call fcn.0042eef0
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 0x42cf91
mov eax, dword [edi]
test eax, eax
je 0x42cf8e
cmp word [eax], si
je 0x42cf8e
inc esi
cmp word [eax + esi*2], 0
jne 0x42cf86
mov dword [edi + 4], esi
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c2028], 0
jne 0x42cf93
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.0048a02b
mov edx, dword [edi]
mov esi, 0x4c2028
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 0x42cfe0
cmp dword [edi], 0
mov esi, dword [ebp - 0xa0]
je 0x42d017
movzx eax, word [edx]
mov ebx, eax
test ax, ax
je 0x42d017
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d006
xor eax, eax
mov word [ecx], ax
mov eax, dword [edi]
test eax, eax
je 0x42d02b
push eax
call fcn.00489c73
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 0x42d059
push 2
call fcn.0048a02b
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 0x42d07c
mov ecx, dword [ebx + 0x170]
test ecx, ecx
je 0x42d07c
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.0041a750
mov ecx, dword [ebx + 0x16c]
mov esi, eax
test ecx, ecx
je 0x42d0a5
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 0x42d0cd
xor ebx, ebx
jmp 0x42eea2
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 0x42d0fc
push eax
mov ecx, esi
call fcn.00401860
jmp 0x42d118
mov eax, dword [esi]
test eax, eax
je 0x42d10b
push eax
call fcn.00489c73
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 0x42d1d3
mov dword [esi + 0x170], 0
mov ecx, dword [esi + 0x16c]
test ecx, ecx
jne 0x42d1e1
xor esi, esi
jmp 0x42d204
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 0x42d21a
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 0x42e423
push 0x4c208c
mov ecx, edi
call fcn.0041b170
cmp byte [edi + 0x30], 0
jne 0x42d257
xor eax, eax
jmp 0x42d26e
cmp word [edi + 0x10], 8
jne 0x42d26b
push dword [edi + 0x18]
call fcn.0048ddfc
add esp, 4
jmp 0x42d26e
mov eax, dword [edi + 0x18]
cmp eax, dword [ebp - 0xc0]
jne 0x42d1c0
push 0x4c20a4
mov ecx, edi
call fcn.0041b170
cmp byte [edi + 0x30], 0
jne 0x42d290
xor ebx, ebx
jmp 0x42d2af
cmp word [edi + 0x10], 8
jne 0x42d2ac
push dword [edi + 0x18]
call fcn.0048ddfc
add esp, 4
mov dword [ebp - 0xe0], eax
mov ebx, eax
jmp 0x42d2b5
mov ebx, dword [edi + 0x18]
mov dword [ebp - 0xe0], ebx
push 0
push ebx
push dword [ebp - 0xc0]
mov ecx, esi
call fcn.0042f260
push ebx
lea ecx, [ebp - 0x34]
mov dword [ebp - 0xc4], eax
call fcn.00401f30
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x42d301
push 2
call fcn.0048a02b
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 0x42d316
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 + 0x4c20c4], 0
jne 0x42d330
test ecx, ecx
jne 0x42d34e
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], edi
jmp 0x42d36b
xor eax, eax
cmp word [ecx], ax
je 0x42d369
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], edi
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d361
add edx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bffa0], 0
jne 0x42d370
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.0048a02b
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 0x42d3e8
movzx eax, word [edx]
mov edi, dword [ebp - 0x90]
mov dword [ebp - 0xd4], ebx
test ax, ax
je 0x42d3e8
mov dword [ebp - 0xd4], ebx
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d3d7
mov ebx, 0x4c20c4
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 0x42d3f4
test esi, esi
je 0x42d424
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x42d424
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x42d413
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 0x42d430
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42d456
push eax
call fcn.00489c73
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 0x42d47f
push eax
call fcn.00489c73
add esp, 4
mov eax, dword [ebp - 0xe8]
cmp eax, 2
jne 0x42d8c2
mov ecx, dword [ebp - 0x9c]
push 3
push 0x4c1dd8
call fcn.0041b250
push eax
lea ecx, [ebp - 0x44]
call fcn.00401860
mov eax, dword [ebp - 0x44]
cmp eax, 0x4bf950
je 0x42d4dc
test eax, eax
je 0x42d5e7
mov esi, 0x4bf950
mov ebx, eax
sub ebx, esi
movzx eax, word [ebx + esi]
mov ecx, eax
test ax, ax
jne 0x42d59f
cmp word [esi], ax
jne 0x42d5a4
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d4fe
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d4fb
cmp word [ecx], ax
je 0x42d4fb
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d4f3
mov dword [ebp - 0x24], eax
xor ecx, ecx
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c20c8], 0
jne 0x42d500
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.0048a02b
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d553
movzx esi, word [edx]
test si, si
je 0x42d553
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d542
mov esi, 0x4c20c8
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 0x42d560
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42d586
push eax
call fcn.00489c73
add esp, 4
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], 1
mov dword [ebp - 0xd8], 1
jmp 0x42d908
cmp ax, word [esi]
je 0x42d5dc
xor edx, edx
cmp dx, ax
jne 0x42d5af
xor edi, edi
jmp 0x42d5bb
push ecx
call fcn.0048dee4
add esp, 4
movzx edi, ax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x42d5cb
xor eax, eax
jmp 0x42d5d7
push ecx
call fcn.0048dee4
add esp, 4
movzx eax, ax
cmp di, ax
jne 0x42d5e4
add esi, 2
jmp 0x42d4c4
mov eax, dword [ebp - 0x44]
cmp eax, 0x4bf9a0
je 0x42d618
test eax, eax
je 0x42d6fe
mov esi, 0x4bf9a0
mov ebx, eax
sub ebx, esi
nop
movzx eax, word [ebx + esi]
mov ecx, eax
test ax, ax
jne 0x42d6b6
cmp word [esi], ax
jne 0x42d6bb
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d63b
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d638
cmp word [ecx], ax
je 0x42d638
nop
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d630
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c20d8], 0
jne 0x42d640
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.0048a02b
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d693
movzx esi, word [edx]
test si, si
je 0x42d693
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d682
mov esi, 0x4c20d8
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 0x42d6a0
jmp 0x42d8a1
cmp ax, word [esi]
je 0x42d6f3
xor edx, edx
cmp dx, ax
jne 0x42d6c6
xor edi, edi
jmp 0x42d6d2
push ecx
call fcn.0048dee4
add esp, 4
movzx edi, ax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x42d6e2
xor eax, eax
jmp 0x42d6ee
push ecx
call fcn.0048dee4
add esp, 4
movzx eax, ax
cmp di, ax
jne 0x42d6fb
add esi, 2
jmp 0x42d600
mov eax, dword [ebp - 0x44]
cmp eax, 0x4bfae0
je 0x42d72e
test eax, eax
je 0x42d80c
mov esi, 0x4bfae0
mov ebx, eax
sub ebx, esi
movzx eax, word [ebx + esi]
mov ecx, eax
test ax, ax
jne 0x42d7c7
cmp word [esi], ax
jne 0x42d7cc
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d750
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d74d
cmp word [ecx], ax
je 0x42d74d
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d745
mov dword [ebp - 0x24], eax
xor ecx, ecx
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c20e8], 0
jne 0x42d752
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.0048a02b
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d7a5
movzx esi, word [edx]
test si, si
je 0x42d7a5
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d794
mov esi, 0x4c20e8
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 0x42d7b1
jmp 0x42d8a1
cmp ax, word [esi]
je 0x42d804
xor edx, edx
cmp dx, ax
jne 0x42d7d7
xor edi, edi
jmp 0x42d7e3
push ecx
call fcn.0048dee4
add esp, 4
movzx edi, ax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x42d7f3
xor eax, eax
jmp 0x42d7ff
push ecx
call fcn.0048dee4
add esp, 4
movzx eax, ax
cmp di, ax
jne 0x42d80c
add esi, 2
jmp 0x42d716
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42d82e
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d82b
cmp word [ecx], ax
je 0x42d82b
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d823
mov dword [ebp - 0x24], eax
xor ecx, ecx
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c2100], 0
jne 0x42d830
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.0048a02b
mov edx, dword [ebp - 0x28]
add esp, 4
mov ebx, eax
mov ecx, ebx
test edx, edx
je 0x42d883
movzx esi, word [edx]
test si, si
je 0x42d883
mov eax, esi
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42d872
mov esi, 0x4c2100
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 0x42d890
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42d8b6
push eax
call fcn.00489c73
add esp, 4
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], edi
mov byte [ebp - 0x20], 1
jmp 0x42d908
cmp eax, 1
jne 0x42d908
mov esi, dword [ebp - 0x9c]
mov ecx, esi
push 0x4c2110
call fcn.0041b170
cmp byte [esi + 0x30], 0
je 0x42d908
cmp word [esi + 0x10], 8
mov eax, dword [esi + 0x18]
jne 0x42d8f2
push eax
call fcn.0048ddfc
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 0x42d92c
mov ecx, dword [ebp - 0x98]
push 3
push 0x4c2124
add ecx, 0x1a0
call fcn.0041b250
jmp 0x42d931
mov eax, 0x4c213c
push eax
lea ecx, [ebp - 0x34]
call fcn.00401860
cmp dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x34]
jne 0x42d969
test esi, esi
jne 0x42d94f
mov dword [ebp - 0x30], esi
jmp 0x42dac8
xor eax, eax
cmp word [esi], ax
je 0x42d95e
inc eax
cmp word [esi + eax*2], 0
jne 0x42d956
mov dword [ebp - 0x30], eax
test eax, eax
je 0x42dac8
mov ebx, 0x4c2144
test esi, esi
jne 0x42d98a
push 2
call fcn.0048a02b
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 0x42d9b0
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42d9ad
cmp word [ecx], ax
je 0x42d9ad
inc eax
cmp word [ecx + eax*2], 0
jne 0x42d9a5
mov dword [ebp - 0x24], eax
xor ecx, ecx
inc ecx
cmp word [ecx*2 + 0x4bfc78], 0
jne 0x42d9b2
add ecx, eax
test esi, esi
je 0x42d9da
xor eax, eax
cmp word [esi], ax
je 0x42d9d8
nop dword [eax + eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x42d9d0
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c2144], 0
jne 0x42d9e0
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.0048a02b
mov edx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp - 0xa0], eax
mov ecx, eax
test edx, edx
je 0x42da41
movzx edi, word [edx]
test di, di
je 0x42da41
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 0x42da30
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 0x42da50
test esi, esi
je 0x42da81
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x42da81
nop
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x42da70
mov eax, 0x5d
mov word [ecx], ax
lea ebx, [ebx + 2]
movzx eax, word [ebx]
lea ecx, [ecx + 2]
test ax, ax
jne 0x42da86
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42daac
push eax
call fcn.00489c73
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 0x4c214c
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x42daff
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov ecx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xd4], ecx
jmp 0x42db2b
cmp word [esi + 0x10], 8
jne 0x42db1f
push dword [esi + 0x18]
call fcn.0048de1f
add esp, 4
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x8c], edx
jmp 0x42db31
mov eax, dword [esi + 0x18]
mov dword [ebp - 0xd4], eax
mov eax, dword [esi + 0x1c]
mov dword [ebp - 0x8c], eax
test ebx, ebx
je 0x42dc20
mov esi, dword [ebp - 0x98]
add esi, 0x1a0
push 0x4c047c
mov ecx, esi
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x42db70
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov ebx, dword [ebp - 0xb0]
mov edi, dword [ebp - 0xb4]
jmp 0x42db8e
cmp word [esi + 0x10], 8
jne 0x42db88
push dword [esi + 0x18]
call fcn.0048de1f
add esp, 4
mov edi, eax
mov ebx, edx
jmp 0x42db8e
mov edi, dword [esi + 0x18]
mov ebx, dword [esi + 0x1c]
mov esi, dword [ebp - 0x98]
add esi, 0x1a0
push 0x4c215c
mov ecx, esi
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x42dbc5
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xb4]
jmp 0x42dbdf
cmp word [esi + 0x10], 8
jne 0x42dbd9
push dword [esi + 0x18]
call fcn.0048de1f
add esp, 4
jmp 0x42dbdf
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 0x42dc43
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.0049a960
mov dword [ebp - 0xa4], edx
jmp 0x42dc60
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.0041b170
cmp byte [ebx + 0x30], 0
jne 0x42dc97
xorps xmm0, xmm0
movlpd qword [ebp - 0xb4], xmm0
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xb4]
jmp 0x42dcb5
cmp word [ebx + 0x10], 8
jne 0x42dcaf
push dword [ebx + 0x18]
call fcn.0048de1f
mov ecx, eax
add esp, 4
mov eax, edx
jmp 0x42dcb5
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 0x42dced
push 2
call fcn.0048a02b
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 0x42dd1b
xor eax, eax
test ecx, ecx
je 0x42dd18
cmp word [ecx], ax
je 0x42dd18
nop dword [eax + eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42dd10
mov dword [ebp - 0x24], eax
cmp eax, 1
cmovle edx, eax
test eax, eax
je 0x42dd36
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 0x42dd52
test ecx, ecx
je 0x42dd4f
cmp word [ecx], ax
je 0x42dd4f
inc eax
cmp word [ecx + eax*2], 0
jne 0x42dd47
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 0x42dd60
lea ebx, [ecx + eax]
test edi, edi
je 0x42dd8a
xor eax, eax
cmp word [edi], ax
je 0x42dd88
nop dword [eax]
inc eax
cmp word [edi + eax*2], 0
jne 0x42dd80
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.0048a02b
mov edx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp - 0xcc], eax
mov ecx, eax
test edx, edx
je 0x42ddd1
movzx esi, word [edx]
test si, si
je 0x42ddd1
mov eax, esi
nop
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42ddc0
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 0x42dde0
test edi, edi
je 0x42de11
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x42de11
nop
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42de00
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42de26
push eax
call fcn.00489c73
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], 0x4c1c54
call fcn.00401cb0
mov esi, eax
cmp dword [esi], 0
jne 0x42de6f
push 2
call fcn.0048a02b
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 0x42de9b
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42de98
cmp word [ecx], ax
je 0x42de98
nop dword [eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42de90
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp word [ecx*2 + 0x4bffa8], 0
jne 0x42dea0
add ecx, eax
test edi, edi
je 0x42deca
xor eax, eax
cmp word [edi], ax
je 0x42dec8
nop dword [eax]
inc eax
cmp word [edi + eax*2], 0
jne 0x42dec0
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c1c54], 0
jne 0x42ded0
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.0048a02b
mov edx, dword [ebp - 0x28]
mov ebx, eax
add esp, 4
mov dword [ebp - 0xa0], ebx
mov ecx, ebx
test edx, edx
je 0x42df31
movzx esi, word [edx]
test si, si
je 0x42df31
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 0x42df20
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 0x42df40
test edi, edi
je 0x42df71
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x42df71
nop
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x42df60
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 0x42df80
mov ebx, dword [ebp - 0xa0]
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42dfac
push eax
call fcn.00489c73
add esp, 4
mov eax, dword [ebp - 0xa4]
mov esi, dword [ebp - 0x9c]
mov ecx, esi
push 0x4c2178
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 1
call fcn.0041b170
cmp byte [esi + 0x30], 0
jne 0x42dfd8
xor eax, eax
jmp 0x42dfef
cmp word [esi + 0x10], 8
jne 0x42dfec
push dword [esi + 0x18]
call fcn.0048ddfc
add esp, 4
jmp 0x42dfef
mov eax, dword [esi + 0x18]
movzx eax, ax
mov dword [ebp - 0xcc], eax
mov word [ebp - 0x1c], ax
test ax, ax
je 0x42e14e
mov eax, dword [ebp - 0x24]
lea ebx, [ebp - 0x1c]
mov dword [ebp - 0xa0], 0x4bfc74
mov byte [ebp - 0x20], 0
test eax, eax
jne 0x42e03b
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42e038
cmp word [ecx], ax
je 0x42e038
nop dword [eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x42e030
mov dword [ebp - 0x24], eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp word [ecx*2 + 0x4c2190], 0
jne 0x42e040
add ecx, eax
xor eax, eax
inc eax
cmp word [ebp + eax*2 - 0x1c], 0
jne 0x42e050
add ecx, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bfc74], 0
jne 0x42e060
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.0048a02b
mov edx, dword [ebp - 0x28]
mov edi, eax
add esp, 4
mov dword [ebp - 0xa4], edi
mov ecx, edi
test edx, edx
je 0x42e0c1
movzx esi, word [edx]
test si, si
je 0x42e0c1
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 0x42e0b0
mov edx, 0x4c2190
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 0x42e0d0
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 0x42e0f0
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 0x42e110
mov edi, dword [ebp - 0xa4]
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42e13c
push eax
call fcn.00489c73
add esp, 4
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 1
jmp 0x42e151
mov edi, dword [ebp - 0x28]
test edi, edi
jne 0x42e16d
push 2
call fcn.0048a02b
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 0x42e1c3
push 2
call fcn.0048a02b
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 0x42e1da
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e222
cmp eax, 1
jl 0x42e222
cmp eax, dword [ebx + 0x2e8]
jg 0x42e222
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e222
cmp dword [ecx + eax*8], 0xf
jne 0x42e222
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 0x42e252
push 2
call fcn.0048a02b
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 0x42e26f
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e2b7
cmp eax, 1
jl 0x42e2b7
cmp eax, dword [esi + 0x2e8]
jg 0x42e2b7
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e2b7
cmp dword [ecx + eax*8], 0xf
jne 0x42e2b7
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 0x42e2e6
push 2
call fcn.0048a02b
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 0x42e303
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e34b
cmp eax, 1
jl 0x42e34b
cmp eax, dword [esi + 0x2e8]
jg 0x42e34b
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e34b
cmp dword [ecx + eax*8], 0xf
jne 0x42e34b
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 0x42e374
push 2
call fcn.0048a02b
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 0x42e391
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e3d9
cmp eax, 1
jl 0x42e3d9
cmp eax, dword [esi + 0x2e8]
jg 0x42e3d9
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e3d9
cmp dword [ecx + eax*8], 0xf
jne 0x42e3d9
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.004326e0
inc dword [ebp - 0xbc]
lea edi, [esi + 0x168]
jmp 0x42d1c0
mov ecx, dword [ebp - 0xb8]
mov edx, 1
push 1
call fcn.0040aea0
cmp dword [ebp - 0xd8], 0
je 0x42e4a0
mov eax, dword [esi + 0xbc]
cmp eax, 0xffffffff
jne 0x42e44f
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42e4a0
cmp eax, 1
jl 0x42e4a0
cmp eax, dword [esi + 0x2e8]
jg 0x42e4a0
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e4a0
cmp dword [ecx + eax*8], 0xf
jne 0x42e4a0
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 6
push edx
push dword [ebp - 0xc8]
mov dword [ebp - 0x74], 0x4c1fc0
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 0x42e8f5
mov edi, dword [ebp - 0xd0]
test edi, edi
jne 0x42e4ca
cmp edx, 0x100000
jbe 0x42e8f5
sub esp, 8
lea ecx, [ebp - 0x34]
push edi
push edx
call fcn.00402130
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x42e504
push 2
call fcn.0048a02b
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 0x42e519
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 + 0x4c2198], 0
jne 0x42e540
test ecx, ecx
jne 0x42e564
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], edi
jmp 0x42e58a
xor eax, eax
cmp word [ecx], ax
je 0x42e588
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 0x42e580
add esi, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bfc74], 0
jne 0x42e590
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.0048a02b
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 0x42e621
mov edx, dword [ebp - 0x9c]
movzx eax, word [edi]
mov dword [ebp - 0xb8], edx
mov edx, dword [ebp - 0x8c]
test ax, ax
je 0x42e621
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 0x42e610
mov esi, 0x4c2198
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 0x42e630
mov esi, dword [ebp - 0xb0]
test edx, edx
je 0x42e666
movzx eax, word [edx]
mov edi, eax
test ax, ax
je 0x42e666
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42e655
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 0x42e670
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42e696
push eax
call fcn.00489c73
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 0x42e6bc
push ecx
call fcn.00489c73
mov eax, dword [ebp - 0x28]
add esp, 4
test eax, eax
jne 0x42e6d8
push 2
call fcn.0048a02b
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 0x42e729
push 2
call fcn.0048a02b
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 0x42e740
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e788
cmp eax, 1
jl 0x42e788
cmp eax, dword [ebx + 0x2e8]
jg 0x42e788
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e788
cmp dword [ecx + eax*8], 0xf
jne 0x42e788
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 0x42e7c1
push 2
call fcn.0048a02b
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 0x42e7d8
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e824
cmp eax, 1
jl 0x42e824
cmp eax, dword [ebx + 0x2e8]
jg 0x42e824
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e824
cmp dword [ecx + eax*8], 0xf
mov esi, dword [ebp - 0x94]
jne 0x42e82a
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 0x42e82a
mov esi, dword [ebp - 0x94]
mov eax, dword [ebx + 0xd8]
cmp eax, 0xffffffff
jne 0x42e83b
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42e883
cmp eax, 1
jl 0x42e883
cmp eax, dword [ebx + 0x2e8]
jg 0x42e883
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42e883
cmp dword [ecx + eax*8], 0xf
jne 0x42e883
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 0x42e894
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42ee7c
cmp eax, 1
jl 0x42ee7c
cmp eax, dword [ebx + 0x2e8]
jg 0x42ee7c
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ee7c
cmp dword [ecx + eax*8], 0xf
jne 0x42ee7c
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 4
push edx
push edi
push 0x1074
mov dword [ebp - 0x74], 0x4c21c0
push dword [ecx + eax*8 + 4]
call esi
jmp 0x42ee7c
lea eax, [ebx - 1]
mov dword [ebp - 0xc8], eax
cmp eax, 0xffffffff
jl 0x42ee82
lea ebx, [esi + 0x1e4]
lea ecx, [esi + 0x2a8]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xc4], ecx
jne 0x42e957
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 0x42ee7c
ja 0x42ea0a
cmp edx, eax
jb 0x42ee7c
jmp 0x42ea0a
push 1
push eax
push dword [esi + 0xd8]
call fcn.00416470
mov esi, eax
test esi, esi
jne 0x42e975
push eax
mov ecx, ebx
call fcn.00401860
jmp 0x42e991
mov eax, dword [ebx]
test eax, eax
je 0x42e984
push eax
call fcn.00489c73
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 0x42e9cf
push eax
mov ecx, ebx
call fcn.00401860
jmp 0x42e9f1
mov eax, dword [ebx]
test eax, eax
je 0x42e9de
push eax
call fcn.00489c73
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 0x42ea44
cmp eax, 0x200000
jb 0x42ee5a
sub esp, 8
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.00402130
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x42ea7e
push 2
call fcn.0048a02b
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 0x42ea93
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 + 0x4c2198], 0
jne 0x42eab2
test ecx, ecx
jne 0x42ead6
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0x8c], edi
jmp 0x42eafa
xor eax, eax
cmp word [ecx], ax
je 0x42eaf8
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 0x42eaf0
add esi, eax
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bfc74], 0
jne 0x42eb00
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.0048a02b
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 0x42eb91
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0xb8], ebx
mov ebx, eax
movzx eax, word [edi]
test ax, ax
je 0x42eb91
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 0x42eb80
mov esi, 0x4c2198
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 0x42eba0
mov esi, dword [ebp - 0xb0]
test edx, edx
je 0x42ebd6
movzx eax, word [edx]
mov edi, eax
test ax, ax
je 0x42ebd6
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x42ebc5
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 0x42ebe0
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42ec06
push eax
call fcn.00489c73
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 0x42ec2c
push eax
call fcn.00489c73
mov ecx, dword [ebp - 0x28]
add esp, 4
test ecx, ecx
jne 0x42ec48
push 2
call fcn.0048a02b
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 0x42eca4
push 2
call fcn.0048a02b
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 0x42ecbb
mov eax, dword [ebx + 0x2e8]
mov ecx, dword [ebx + 0x2e4]
test ecx, ecx
je 0x42ed07
cmp eax, 1
jl 0x42ed07
cmp eax, dword [ebx + 0x2e8]
jg 0x42ed07
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ed07
cmp dword [ecx + eax*8], 0xf
mov ebx, dword [ebp - 0x94]
jne 0x42ed0d
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 0x42ed0d
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 0x42ed39
push 2
call fcn.0048a02b
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 0x42ed56
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42ed9a
cmp eax, 1
jl 0x42ed9a
cmp eax, dword [esi + 0x2e8]
jg 0x42ed9a
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ed9a
cmp dword [ecx + eax*8], 0xf
jne 0x42ed9a
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 0x42edab
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42edf3
cmp eax, 1
jl 0x42edf3
cmp eax, dword [esi + 0x2e8]
jg 0x42edf3
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42edf3
cmp dword [ecx + eax*8], 0xf
jne 0x42edf3
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 0x42ee04
mov eax, dword [esi + 0x2e8]
mov ecx, dword [esi + 0x2e4]
test ecx, ecx
je 0x42ee4c
cmp eax, 1
jl 0x42ee4c
cmp eax, dword [esi + 0x2e8]
jg 0x42ee4c
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x42ee4c
cmp dword [ecx + eax*8], 0xf
jne 0x42ee4c
lea edx, [ebp - 0x88]
mov dword [ebp - 0x80], 4
push edx
push edi
push 0x1074
mov dword [ebp - 0x74], 0x4c21c0
push dword [ecx + eax*8 + 4]
call ebx
mov ebx, dword [ebp - 0x90]
mov edx, dword [ebp - 0xa8]
jmp 0x42ee60
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 0x42e91f
mov ebx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x42ee92
push eax
call fcn.00489c73
add esp, 4
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x42eea2
push eax
call fcn.00489c73
add esp, 4
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x42eeb3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x42eec3
push ecx
call fcn.00489c73
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.00489c65
mov esp, ebp
pop ebp
ret 4