Function at 0x45c130
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49ea3c
mov eax, dword fs:[0]
push eax
sub esp, 0x1b4
mov eax, dword [0x4d7200]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x194], ebx
mov eax, dword [ebp + 0x1c]
lea ecx, [ebx + 0x130]
mov edi, dword [ebp + 8]
sub esp, 8
mov esi, dword [ebp + 0x20]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x1c0], edi
mov dword [ebp - 0x1a4], esi
mov dword [ebp - 0x1bc], eax
call fcn.0041b0e0
sub esp, 8
lea ecx, [ebx + 0x168]
call fcn.0041b0e0
sub esp, 8
lea ecx, [ebx + 0x1a0]
call fcn.0041b0e0
xorps xmm0, xmm0
mov dword [ebp - 0x118], 0
movq qword [ebp - 0x120], xmm0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x120], 0
mov byte [ebp - 0x118], 1
mov dword [ebp - 4], 0
movq qword [ebp - 0x12c], xmm0
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x12c], 0
mov byte [ebp - 0x124], 1
movq qword [ebp - 0x144], xmm0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x144], 0
mov byte [ebp - 0x13c], 1
movq qword [ebp - 0x138], xmm0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x138], 0
mov byte [ebp - 0x130], 1
push edi
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 3
call fcn.00401e50
mov esi, eax
cmp dword [esi], 0
jne 0x45c2a6
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 ecx, dword [esi]
mov edi, 0x4c439c
mov byte [esi + 8], 1
mov edx, ecx
mov dword [ebp - 0x11c], 0
mov esi, ecx
mov byte [ebp - 0x118], 0
xor ebx, ebx
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x114], ecx
nop dword [eax + eax]
inc ebx
cmp word [ebx*2 + 0x4c9380], 0
jne 0x45c2e0
test ecx, ecx
jne 0x45c2f8
mov dword [ebp - 0x114], ecx
jmp 0x45c30f
xor eax, eax
cmp word [ecx], ax
je 0x45c30d
mov dword [ebp - 0x114], ecx
inc eax
cmp word [edx + eax*2], 0
jne 0x45c305
add ebx, eax
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c439c], 0
jne 0x45c311
add ebx, eax
xor ecx, ecx
mov edx, 2
mov dword [ebp - 0x19c], ebx
lea eax, [ebx + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov ebx, 0x4c9380
mov dword [ebp - 0x148], eax
add esp, 4
mov ecx, eax
mov edx, 0x43
sub ebx, eax
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + ebx]
mov edx, eax
test ax, ax
jne 0x45c355
mov eax, dword [ebp - 0x114]
mov ebx, dword [ebp - 0x19c]
test eax, eax
je 0x45c391
movzx eax, word [eax]
mov edx, eax
test ax, ax
je 0x45c391
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x45c380
mov eax, 0x2e
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
lea ecx, [ecx + 2]
test ax, ax
jne 0x45c396
xor eax, eax
mov dword [ebp - 0x11c], ebx
mov word [ecx], ax
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x194]
push eax
push 0xffffffffffffffff
add ecx, 0x5b0
mov dword [ebp - 0x120], eax
mov byte [ebp - 0x118], 1
call fcn.0041a070
mov ecx, dword [ebp - 0x12c]
test ecx, ecx
jne 0x45c418
push 2
call fcn.0048a02b
add esp, 4
mov dword [ebp - 0x12c], eax
xor ecx, ecx
mov dword [ebp - 0x120], ecx
mov word [eax], cx
mov dword [ebp - 0x128], ecx
mov byte [ebp - 0x118], cl
mov dword [ebp - 0x11c], ecx
mov ecx, dword [ebp - 0x12c]
jmp 0x45c433
mov dword [ebp - 0x120], 0
mov byte [ebp - 0x118], 0
mov dword [ebp - 0x11c], 0
mov esi, ecx
mov byte [ebp - 0x124], 1
xor edi, edi
nop
inc edi
cmp word [edi*2 + str.SELECT__FROM_MSFT_Disk_WHERE_Number_], 0
jne 0x45c440
test ecx, ecx
je 0x45c461
xor eax, eax
cmp word [ecx], ax
je 0x45c45f
inc eax
cmp word [ecx + eax*2], 0
jne 0x45c457
add edi, eax
xor ecx, ecx
lea eax, [edi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov ebx, str.SELECT__FROM_MSFT_Disk_WHERE_Number_
mov dword [ebp - 0x19c], eax
add esp, 4
mov ecx, eax
mov edx, 0x53
sub ebx, eax
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + ebx]
mov edx, eax
test ax, ax
jne 0x45c491
test esi, esi
je 0x45c4c1
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x45c4c1
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x45c4b0
push dword [ebp - 0x148]
mov esi, dword [ebp - 0x19c]
xor eax, eax
mov word [ecx], ax
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x11c], edi
call fcn.00489c73
mov edi, dword [ebp - 0x194]
add esp, 4
cmp byte [edi + 0x150], 0
lea ebx, [edi + 0x130]
mov byte [ebp - 0x118], 1
jne 0x45c50f
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x45c50f
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebx + 8], 0
mov edx, esi
mov ecx, dword [ebx]
call fcn.0041a750
mov ecx, dword [ebx + 4]
mov esi, eax
test ecx, ecx
je 0x45c52e
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
test esi, esi
mov dword [ebx + 4], esi
mov byte [ebx + 0x20], 0
setne al
mov byte [ebx + 0x30], al
test esi, esi
je 0x45d05d
mov eax, dword [esi]
lea ecx, [ebp - 0x114]
push ecx
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x148], 0
push ecx
push 1
push 0xffffffffffffffff
push esi
mov dword [ebp - 0x114], 0
call dword [eax + 0x10]
mov ecx, dword [ebx + 8]
mov esi, dword [ebp - 0x148]
test ecx, ecx
je 0x45c584
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
test esi, esi
mov dword [ebx + 8], esi
mov byte [ebx + 0x20], 0
setne al
cmp dword [ebx + 8], 0
mov byte [ebx + 0x30], al
je 0x45d05d
mov ebx, dword [ebp + 0x18]
test ebx, ebx
ja 0x45c5ba
jb 0x45c5b1
mov esi, dword [ebp + 0x14]
cmp esi, 0x100000
jae 0x45c5bd
mov esi, 0x100000
xor ebx, ebx
jmp 0x45c5bd
mov esi, dword [ebp + 0x14]
add edi, 0x130
push 0x4c047c
mov ecx, edi
call fcn.0041b170
cmp byte [edi + 0x30], 0
jne 0x45c5ee
xorps xmm0, xmm0
movlpd qword [ebp - 0x1b0], xmm0
mov edx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x1b0]
jmp 0x45c608
cmp word [edi + 0x10], 8
jne 0x45c602
push dword [edi + 0x18]
call fcn.0048de1f
add esp, 4
jmp 0x45c608
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x1c]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x114], eax
mov eax, edi
add eax, esi
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp + 0x10]
mov ecx, eax
mov dword [ebp - 0x148], eax
adc ecx, ebx
mov eax, dword [ebp - 0x114]
add eax, 0xfff00000
mov dword [ebp - 0x1ac], eax
mov eax, edx
adc eax, 0xffffffff
cmp ecx, eax
jb 0x45c66d
ja 0x45c652
mov eax, dword [ebp - 0x1b4]
cmp eax, dword [ebp - 0x1ac]
jbe 0x45c66d
mov edi, dword [ebp - 0x114]
mov eax, edx
sub edi, esi
sbb eax, ebx
add edi, 0xfff00000
adc eax, 0xffffffff
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x194]
push 0x4c1f08
lea ecx, [eax + 0x130]
mov dword [eax], 0
call fcn.0041b170
mov ecx, dword [ebp - 0x194]
cmp byte [ecx + 0x160], 0
jne 0x45c6a4
mov dword [ebp - 0x114], 0
jmp 0x45c6ce
cmp word [ecx + 0x140], 8
jne 0x45c6c1
push dword [ecx + 0x148]
call fcn.0048ddfc
add esp, 4
movzx eax, ax
jmp 0x45c6c8
movzx eax, word [ecx + 0x148]
mov dword [ebp - 0x114], eax
push 0x43a370
push 0x445d00
push 8
push 0x20
lea eax, [ebp - 0x110]
push eax
call fcn.0048a060
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x144]
push dword [ebp - 0x148]
and edi, 0xfff00000
push edi
call fcn.00401cb0
mov edx, esi
and edx, 0xfffff
mov eax, edx
or eax, 0
je 0x45c725
mov ecx, 0x100000
mov eax, 0
sub ecx, edx
sbb eax, eax
add esi, ecx
adc ebx, eax
push ebx
push esi
lea ecx, [ebp - 0x138]
call fcn.00401cb0
mov dword [ebp - 0x190], 0
xor eax, eax
mov byte [ebp - 0x188], 0
nop word [eax + eax]
inc eax
cmp word [eax*2 + 0x4c047c], 0
jne 0x45c750
mov dword [ebp - 0x18c], eax
xor ecx, ecx
inc eax
mov edi, 2
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
mov dword [ebp - 0x190], edx
test eax, eax
jle 0x45c7ad
mov ax, word [ecx*2 + 0x4c047c]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x18c]
mov edx, dword [ebp - 0x190]
cmp ecx, eax
jl 0x45c790
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x188], 1
mov byte [ebp - 4], 5
mov ebx, dword [ebp - 0x144]
test ebx, ebx
jne 0x45c7e5
push 2
call fcn.0048a02b
mov ebx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x144], ebx
mov dword [ebp - 0x140], eax
mov word [ebx], ax
mov esi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov eax, 8
push ebx
mov byte [ebp - 0x13c], 1
mov word [ebp - 0x180], ax
call esi
mov dword [ebp - 0x178], eax
test eax, eax
jne 0x45c813
test ebx, ebx
jne 0x45d0a1
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x110]
call fcn.00401560
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0x100]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
js 0x45d0ab
lea eax, [ebp - 0x180]
mov byte [ebp - 4], 4
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call ebx
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x45c86b
push eax
call fcn.00489c73
add esp, 4
mov dword [ebp - 0x190], 0
xor eax, eax
mov byte [ebp - 0x188], 0
nop
inc eax
cmp word [eax*2 + 0x4c214c], 0
jne 0x45c880
mov dword [ebp - 0x18c], eax
xor ecx, ecx
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
mov dword [ebp - 0x190], edx
test eax, eax
jle 0x45c8dd
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c214c]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x18c]
mov edx, dword [ebp - 0x190]
cmp ecx, eax
jl 0x45c8c0
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x188], 1
mov byte [ebp - 4], 7
mov edi, dword [ebp - 0x138]
test edi, edi
jne 0x45c915
push 2
call fcn.0048a02b
mov edi, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x138], edi
mov dword [ebp - 0x134], eax
mov word [edi], ax
mov eax, 8
mov byte [ebp - 0x130], 1
push edi
mov word [ebp - 0x180], ax
call esi
mov dword [ebp - 0x178], eax
test eax, eax
jne 0x45c93d
test edi, edi
jne 0x45d0b1
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0xf0]
call fcn.00401560
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0xe0]
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
call eax
test eax, eax
js 0x45d0bb
lea eax, [ebp - 0x180]
mov byte [ebp - 4], 4
push eax
call ebx
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x45c990
push eax
call fcn.00489c73
add esp, 4
xor eax, eax
mov dword [ebp - 0x190], 0
cmp word [ebp - 0x114], 2
mov byte [ebp - 0x188], 0
jne 0x45ca84
inc eax
cmp word [eax*2 + 0x4c1dd8], 0
jne 0x45c9b1
mov dword [ebp - 0x18c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
mov dword [ebp - 0x190], edx
test eax, eax
jle 0x45ca0e
mov ax, word [ecx*2 + 0x4c1dd8]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x18c]
mov edx, dword [ebp - 0x190]
cmp ecx, eax
jl 0x45c9f1
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x188], 1
mov edi, dword [ebp - 0x1a0]
mov eax, 8
mov byte [ebp - 4], 9
push edi
mov word [ebp - 0x180], ax
call esi
mov dword [ebp - 0x178], eax
test eax, eax
jne 0x45ca46
test edi, edi
jne 0x45d0c1
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0xd0]
mov edi, 3
call fcn.00401560
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0xc0]
push eax
call esi
test eax, eax
js 0x45d0cb
jmp 0x45cb51
inc eax
cmp word [eax*2 + 0x4c2ef0], 0
jne 0x45ca84
mov dword [ebp - 0x18c], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
mov dword [ebp - 0x190], edx
test eax, eax
jle 0x45caed
nop dword [eax]
nop dword [eax + eax]
mov ax, word [ecx*2 + 0x4c2ef0]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x18c]
mov edx, dword [ebp - 0x190]
cmp ecx, eax
jl 0x45cad0
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x188], 1
mov edi, dword [ebp - 0x1a0]
push edi
call fcn.0048ddfc
mov ecx, 3
mov dword [ebp - 0x178], eax
add esp, 4
mov word [ebp - 0x180], cx
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0xc
mov edi, ecx
lea ecx, [ebp - 0xd0]
push eax
call fcn.00401560
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0xc0]
push eax
call esi
test eax, eax
js 0x45d0d1
lea eax, [ebp - 0x180]
mov byte [ebp - 4], 4
push eax
call ebx
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x45cb71
push eax
call fcn.00489c73
add esp, 4
cmp byte [ebp + 0x2c], 0
je 0x45cc5c
mov dword [ebp - 0x190], 0
xor eax, eax
mov byte [ebp - 0x188], 0
nop
inc eax
cmp word [eax*2 + 0x4c2110], 0
jne 0x45cb90
mov dword [ebp - 0x18c], eax
xor ecx, ecx
inc eax
mov edi, 2
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
mov dword [ebp - 0x190], edx
test eax, eax
jle 0x45cbed
mov ax, word [ecx*2 + 0x4c2110]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x18c]
mov edx, dword [ebp - 0x190]
cmp ecx, eax
jl 0x45cbd0
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x188], 1
or eax, 0xffffffff
mov word [ebp - 0x180], di
mov word [ebp - 0x178], ax
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0xe
lea edi, [ecx + 4]
push eax
lea ecx, [ebp - 0xb0]
call fcn.00401560
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0xa0]
push eax
call esi
test eax, eax
js 0x45d0d7
lea eax, [ebp - 0x180]
mov byte [ebp - 4], 4
push eax
call ebx
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x45cc5c
push eax
call fcn.00489c73
add esp, 4
cmp byte [ebp + 0x30], 0
je 0x45cd51
mov dword [ebp - 0x190], 0
xor eax, eax
mov byte [ebp - 0x188], 0
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c2edc], 0
jne 0x45cc80
mov dword [ebp - 0x18c], eax
xor ecx, ecx
inc eax
mov esi, 2
mul esi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a02b
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
mov dword [ebp - 0x190], edx
test eax, eax
jle 0x45ccdd
mov ax, word [ecx*2 + 0x4c2edc]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0x18c]
mov edx, dword [ebp - 0x190]
cmp ecx, eax
jl 0x45ccc0
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0x188], 1
or eax, 0xffffffff
mov word [ebp - 0x180], si
mov word [ebp - 0x178], ax
mov eax, edi
mov byte [ebp - 4], 0x10
shl eax, 5
lea esi, [ebp - 0x110]
add esi, eax
inc edi
lea eax, [ebp - 0x190]
mov ecx, esi
push eax
call fcn.00401560
lea ecx, [ebp - 0x180]
lea eax, [esi + 0x10]
push ecx
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
call eax
test eax, eax
js 0x45d0dd
lea eax, [ebp - 0x180]
push eax
call ebx
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x45cd51
push eax
call fcn.00489c73
add esp, 4
mov eax, dword [ebp - 0x194]
cmp dword [eax], 0
je 0x45cd64
or esi, 0xffffffff
jmp 0x45d01c
mov dword [ebp - 0x14c], 0
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x11
mov edx, dword [eax + 0x138]
push ecx
push edi
lea ecx, [ebp - 0x110]
push ecx
mov ecx, dword [eax + 0x130]
push 0x4c2f00
call fcn.0041a9b0
test al, al
jne 0x45cda5
mov esi, 0xfffffffe
jmp 0x45d008
mov esi, dword [ebp - 0x14c]
lea eax, [ebp - 0x160]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
push eax
call edi
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0x13
push eax
call edi
test esi, esi
je 0x45ce28
mov eax, dword [esi]
lea ecx, [ebp - 0x160]
push 0
push 0
push ecx
push 0
push 0x4c04c0
push esi
call dword [eax + 0x10]
shr eax, 0x1f
xor al, 1
je 0x45ce28
cmp word [ebp - 0x160], 8
jne 0x45ce13
push dword [ebp - 0x158]
call fcn.0048ddfc
add esp, 4
mov byte [ebp - 4], 0x11
mov esi, eax
lea eax, [ebp - 0x160]
push eax
call ebx
jmp 0x45ce37
mov esi, dword [ebp - 0x158]
lea eax, [ebp - 0x160]
push eax
mov byte [ebp - 4], 0x11
call ebx
jmp 0x45ce37
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0x11
push eax
call ebx
xor esi, esi
mov eax, dword [ebp - 0x194]
push 0
push 0
push 0
mov edx, dword [eax + 0x138]
mov ecx, dword [eax + 0x130]
push 0x4c2018
call fcn.0041a9b0
mov ecx, dword [ebp - 0x1a4]
test ecx, ecx
je 0x45d008
xor eax, eax
cmp word [ecx], ax
je 0x45d008
inc eax
cmp word [ecx + eax*2], 0
jne 0x45ce72
test eax, eax
je 0x45d008
mov ecx, dword [ebp - 0x194]
cmp dword [ecx], 0
je 0x45ce95
or esi, 0xffffffff
jmp 0x45d008
mov esi, dword [ebp - 0x14c]
lea eax, [ebp - 0x170]
push eax
call edi
lea eax, [ebp - 0x170]
mov byte [ebp - 4], 0x16
push eax
call edi
test esi, esi
je 0x45cf1c
mov eax, dword [esi]
lea ecx, [ebp - 0x170]
push 0
push 0
push ecx
push 0
push 0x4c2f20
push esi
call dword [eax + 0x10]
shr eax, 0x1f
xor al, 1
je 0x45cf1c
cmp word [ebp - 0x170], 0xd
jne 0x45cf1c
mov ecx, dword [ebp - 0x168]
test ecx, ecx
je 0x45cf1c
lea edx, [ebp - 0x148]
mov dword [ebp - 0x148], 0
mov eax, dword [ecx]
push edx
push 0x4cc6f8
push ecx
call dword [eax]
test eax, eax
lea eax, [ebp - 0x170]
push eax
jne 0x45cf23
mov esi, dword [ebp - 0x148]
mov byte [ebp - 4], 0x11
call ebx
jmp 0x45cf2b
lea eax, [ebp - 0x170]
push eax
mov byte [ebp - 4], 0x11
call ebx
xor esi, esi
mov ebx, dword [ebp - 0x194]
cmp byte [ebx + 0x188], 0
je 0x45cf44
mov dword [ebx + 0x170], 0
mov byte [ebx + 0x188], 0
mov ecx, dword [ebx + 0x170]
test ecx, ecx
je 0x45cf5b
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebx + 0x170], esi
test esi, esi
je 0x45d003
push 0x4c20a4
lea ecx, [ebx + 0x168]
call fcn.0041b170
cmp byte [ebx + 0x198], 0
je 0x45d003
cmp word [ebx + 0x178], 8
jne 0x45cfa2
push dword [ebx + 0x180]
call fcn.0048ddfc
add esp, 4
mov edx, eax
jmp 0x45cfa8
mov edx, dword [ebx + 0x180]
test edx, edx
je 0x45d003
mov esi, dword [ebp - 0x1a4]
xor ecx, ecx
cmp word [esi], cx
je 0x45cfc8
nop dword [eax]
inc ecx
cmp word [esi + ecx*2], 0
jne 0x45cfc0
push dword [ebp + 0x34]
test ecx, ecx
mov eax, 0x4c80bc
push 0
push ecx
push 0
push dword [ebp - 0x1b8]
cmovne eax, esi
mov ecx, ebx
push dword [ebp - 0x1bc]
push eax
push edx
push dword [ebp - 0x1c0]
call fcn.0045f470
mov esi, eax
mov eax, 0xfffffffd
test esi, esi
cmovne esi, eax
jmp 0x45d008
mov esi, 0xfffffffd
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x14c]
test eax, eax
je 0x45d01c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x43a370
push 8
push 0x20
lea eax, [ebp - 0x110]
mov byte [ebp - 4], 3
push eax
call fcn.00489f08
mov eax, dword [ebp - 0x138]
test eax, eax
je 0x45d048
push eax
call fcn.00489c73
add esp, 4
mov eax, dword [ebp - 0x144]
test eax, eax
je 0x45d060
push eax
call fcn.00489c73
add esp, 4
jmp 0x45d060
or esi, 0xffffffff
mov eax, dword [ebp - 0x12c]
test eax, eax
je 0x45d073
push eax
call fcn.00489c73
add esp, 4
push dword [ebp - 0x19c]
call fcn.00489c73
add esp, 4
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00489c65
mov esp, ebp
pop ebp
ret 0x30
push 0x8007000e
call fcn.00489900
push eax
call fcn.00489900
push 0x8007000e
call fcn.00489900
push eax
call fcn.00489900
push 0x8007000e
call fcn.00489900
push eax
call fcn.00489900
push eax
call fcn.00489900
push eax
call fcn.00489900
push eax
call fcn.00489900
int3