Function at 0x445fd0
Capabilities:
Reference sql statements

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49e929
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x3e0
mov eax, dword [0x4d7200]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x3b4], edi
mov eax, dword [edi + 0xbc]
lea ecx, [edi + 0x2e8]
cmp eax, 0xffffffff
jne 0x44602c
mov eax, dword [ecx]
mov edx, dword [edi + 0x2e4]
test edx, edx
je 0x448827
cmp eax, 1
jl 0x448827
cmp eax, dword [ecx]
jg 0x448827
lea eax, [eax + eax*8]
cmp dword [edx + eax*8 + 0xc], 0
je 0x448827
cmp dword [edx + eax*8], 0xf
jne 0x448827
push 2
push 0xffffffffffffffff
push 0x100c
push dword [edx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
test esi, esi
js 0x448827
xorps xmm0, xmm0
mov dword [ebp - 0x88], 0
movq qword [ebp - 0x90], xmm0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x90], 0
mov byte [ebp - 0x88], 1
mov dword [ebp - 4], 0
xor eax, eax
movq qword [ebp - 0x9c], xmm0
xor edi, edi
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], edi
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x9c], eax
mov byte [ebp - 0x94], 1
mov byte [ebp - 4], 1
push eax
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0x3b4]
push esi
movq qword [ebp - 0xe0], xmm0
push dword [eax + 0xbc]
lea ecx, [eax + 0x2a8]
call fcn.00416470
mov dword [ebp - 0x3e8], eax
mov dword [ebp - 0xdc], edi
mov dword [ebp - 0xe0], eax
mov byte [ebp - 0xd8], 1
xorps xmm0, xmm0
mov dword [ebp - 0xcc], edi
movq qword [ebp - 0xd4], xmm0
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0xd4], edi
mov byte [ebp - 0xcc], 1
mov eax, dword [ebp - 0x3b4]
push 3
push esi
mov byte [ebp - 4], 3
push dword [eax + 0xbc]
lea ecx, [eax + 0x2a8]
call fcn.00416470
mov ecx, eax
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0x3ec], ecx
lea edx, [edi + 2]
test ecx, ecx
jne 0x4461ab
mov byte [ebp - 0xcc], al
mov eax, 1
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x3ec], ecx
mov word [ecx], ax
mov byte [ebp - 0xcc], 1
mov dword [ebp - 0xd4], ecx
test ecx, ecx
jne 0x4461df
push 2
call fcn.0048a28e
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xd0], eax
mov word [ecx], ax
mov byte [ebp - 0xcc], 1
xor esi, esi
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x84], ecx
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x8c], 0
nop dword [eax]
inc esi
cmp word [esi*2 + str.SELECT__FROM_MSFT_Disk_WHERE_Number_], 0
jne 0x446210
test ecx, ecx
je 0x446231
xor eax, eax
cmp word [ecx], ax
je 0x44622f
inc eax
cmp word [ecx + eax*2], 0
jne 0x446227
add esi, eax
xor ecx, ecx
lea eax, [esi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edi, str.SELECT__FROM_MSFT_Disk_WHERE_Number_
mov dword [ebp - 0x3c8], eax
add esp, 4
mov ecx, eax
mov edx, 0x53
sub edi, eax
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + edi]
mov edx, eax
test ax, ax
jne 0x446261
mov eax, dword [ebp - 0x3ec]
mov edi, 0
test eax, eax
je 0x4462a4
movzx eax, word [eax]
mov edx, eax
test ax, ax
je 0x4462a4
mov edi, dword [ebp - 0x84]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x446291
xor edi, edi
xor eax, eax
mov dword [ebp - 0x8c], esi
mov word [ecx], ax
mov ecx, dword [ebp - 0x3b4]
mov eax, dword [ebp - 0x3c8]
mov dword [ebp - 0x90], eax
mov byte [ebp - 0x88], 1
cmp byte [ecx + 0x150], 0
lea esi, [ecx + 0x138]
jne 0x4462ef
mov ecx, dword [esi]
test ecx, ecx
je 0x4462e9
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [ebp - 0x3c8]
mov ecx, dword [ebp - 0x3b4]
mov dword [esi], 0
mov edx, eax
mov ecx, dword [ecx + 0x130]
call fcn.0041a750
mov edx, dword [ebp - 0x3b4]
mov esi, eax
mov ecx, dword [edx + 0x134]
test ecx, ecx
je 0x446320
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov edx, dword [ebp - 0x3b4]
test esi, esi
mov dword [edx + 0x134], esi
mov ecx, esi
mov byte [edx + 0x150], 0
setne al
mov byte [edx + 0x160], al
test ecx, ecx
je 0x4487b5
mov eax, dword [ecx]
lea edx, [ebp - 0x84]
push edx
lea edx, [ebp - 0x36c]
mov dword [ebp - 0x36c], 0
push edx
push 1
push 0xffffffffffffffff
push ecx
mov dword [ebp - 0x84], 0
call dword [eax + 0x10]
mov edx, dword [ebp - 0x3b4]
mov esi, dword [ebp - 0x36c]
mov ecx, dword [edx + 0x138]
test ecx, ecx
je 0x446390
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov edx, dword [ebp - 0x3b4]
test esi, esi
mov dword [edx + 0x138], esi
mov byte [edx + 0x150], 0
setne al
cmp dword [edx + 0x138], 0
mov byte [edx + 0x160], al
je 0x4487b5
xorps xmm0, xmm0
movups xmmword [ebp - 0x100], xmm0
mov dword [ebp - 0x100], 0
movups xmmword [ebp - 0xf0], xmm0
push ecx
mov byte [ebp - 4], 4
lea eax, [edx + 0x2a8]
movaps xmm0, xmmword [0x4cd010]
lea ecx, [ebp - 0x100]
push 0
push dword [edx + 0x54]
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe8], 0xd
push dword [edx + 0x44]
mov dword [ebp - 0xe4], 0
push eax
call fcn.00417480
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x3e8]
test ecx, ecx
jne 0x446442
push 2
call fcn.0048a28e
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x3e8], ecx
mov dword [ebp - 0xe0], ecx
mov dword [ebp - 0xdc], eax
mov word [ecx], ax
xor eax, eax
mov byte [ebp - 0xd8], 1
mov dword [ebp - 0x90], 0
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x8c], 0
test ecx, ecx
je 0x446478
cmp word [ecx], ax
je 0x446478
nop
inc eax
cmp word [ecx + eax*2], 0
jne 0x446470
xor ecx, ecx
nop word [eax + eax]
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c4e68], 0
jne 0x446480
lea esi, [ecx + eax]
mov edx, 2
xor ecx, ecx
mov dword [ebp - 0x3c4], esi
lea eax, [esi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov ecx, dword [ebp - 0x3e8]
add esp, 4
mov dword [ebp - 0x3c0], eax
mov edx, eax
test ecx, ecx
je 0x4464f1
movzx ecx, word [ecx]
mov esi, ecx
mov dword [ebp - 0x84], esi
test cx, cx
je 0x4464f1
mov esi, dword [ebp - 0x3e8]
movzx ecx, cx
sub esi, eax
mov word [edx], cx
add edx, 2
movzx eax, word [edx + esi]
mov ecx, eax
test ax, ax
jne 0x4464e0
mov esi, 0x4c4e68
mov ecx, 0x20
sub esi, edx
nop dword [eax]
mov word [edx], cx
lea edx, [edx + 2]
movzx eax, word [edx + esi]
mov ecx, eax
test ax, ax
jne 0x446500
mov esi, dword [ebp - 0x3c4]
xor eax, eax
mov word [edx], ax
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x8c], esi
mov esi, dword [ebp - 0x3c8]
push esi
mov dword [ebp - 0x90], eax
call fcn.00489ed3
mov esi, dword [ebp - 0x3b4]
add esp, 4
push dword [esi + 0x4d8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x446561
mov eax, dword [esi + 0x4d8]
mov dword [ebp - 0x3e4], eax
jmp 0x44656b
mov dword [ebp - 0x3e4], 0
push 0x268
lea eax, [ebp - 0x368]
push 0
push eax
call fcn.0048b9e0
add esp, 0xc
mov byte [ebp - 0x88], 1
mov word [ebp - 0x330], 0
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x258], 0
mov byte [ebp - 0x250], 1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x368]
push 1
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
call fcn.00417000
push ecx
push dword [ebp - 0x3e4]
add esi, 0x22c
lea eax, [ebp - 0x368]
push 0xffffffffffffffff
push SysReAllocString
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x118
cmovne eax, esi
lea ecx, [ebp - 0x368]
mov esi, dword [ebp - 0x3c0]
push 0x226
push esi
push 0x4c3cf8
mov dword [ebp - 0x1a8], eax
call fcn.0040bf80
push ecx
push 0xc
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xff000000
push 0x118
push 0x226
lea ecx, [ebp - 0x368]
mov byte [ebp - 4], 7
call fcn.004167f0
cmp dword [ebp - 0x3e4], 0
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x84], eax
je 0x4466d0
mov eax, dword [ebp - 0x3b4]
xor esi, esi
add eax, 0x2f8
mov dword [ebp - 0x36c], eax
nop word [eax + eax]
mov eax, dword [eax]
test eax, eax
je 0x4466a8
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4466a8
mov eax, dword [ebp - 0x36c]
inc esi
add eax, 4
mov dword [ebp - 0x36c], eax
cmp esi, 0x30
jl 0x446680
jmp 0x4466ca
mov ecx, dword [ebp - 0x3b4]
mov eax, dword [ebp - 0x84]
mov dword [ecx + esi*4 + 0x2f8], eax
inc esi
cmp esi, dword [ecx + 0x2f4]
jle 0x4466ca
mov dword [ecx + 0x2f4], esi
mov esi, dword [ebp - 0x3c0]
movsd xmm0, qword [0x4cc778]
xor eax, eax
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], 0xffffff
movsd qword [ebp - 0x1f8], xmm0
mov dword [ebp - 0x1f0], 0x2bc
mov byte [ebp - 0x1ec], 1
mov byte [ebp - 0x1aa], 0
nop
inc eax
cmp word [eax*2 + 0x4bff50], 0
jne 0x446710
inc eax
push eax
push 0x4bff50
lea eax, [ebp - 0x1ea]
push 0x20
push eax
call fcn.0048d183
add esp, 0x10
mov dword [ebp - 0x178], 0x1400
lea ecx, [ebp - 0x368]
mov byte [ebp - 0x88], 1
call fcn.00416d40
test al, al
je 0x4467bd
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x1c
push 0x21c
push 5
and eax, 1
push 5
shl eax, 0x11
add eax, 0x50000300
push eax
push esi
push 0x4c018c
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
test eax, eax
je 0x4467bd
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cce50]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
movsd xmm0, qword [0x4cc778]
xor eax, eax
mov dword [ebp - 0x178], 0x400
movsd qword [ebp - 0x1f8], xmm0
mov dword [ebp - 0x1f0], 0x2bc
mov byte [ebp - 0x1ec], 1
mov byte [ebp - 0x1aa], 0
inc eax
cmp word [eax*2 + 0x4bff50], 0
jne 0x4467f1
inc eax
push eax
push 0x4bff50
lea eax, [ebp - 0x1ea]
push 0x20
push eax
call fcn.0048d183
mov eax, dword [ebp - 0x3c4]
add esp, 0x10
mov byte [ebp - 0x88], 0
test eax, eax
jne 0x44683e
cmp word [esi], ax
je 0x446838
nop dword [eax + eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x446830
mov dword [ebp - 0x8c], eax
xor ecx, ecx
inc ecx
cmp word [ecx*2 + 0x4c4e8c], 0
jne 0x446840
add eax, ecx
mov edx, 2
mov dword [ebp - 0x3e0], eax
xor ecx, ecx
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edi, 0x4c4e8c
mov dword [ebp - 0x3c8], eax
add esp, 4
mov edx, esi
mov ecx, eax
mov esi, 0x20
sub edi, eax
mov word [ecx], si
add ecx, 2
movzx eax, word [edi + ecx]
mov esi, eax
test ax, ax
jne 0x446884
mov esi, dword [ebp - 0x3c0]
movzx eax, word [esi]
mov edi, eax
mov dword [ebp - 0x84], edi
mov edi, 0
test ax, ax
je 0x4468c4
movzx eax, ax
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x4468b3
xor eax, eax
push esi
mov word [ecx], ax
call fcn.00489ed3
mov eax, dword [ebp - 0x3e0]
lea ecx, [ebp - 0x368]
mov esi, dword [ebp - 0x3c8]
add esp, 4
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], eax
mov byte [ebp - 0x88], 1
call fcn.00416d40
test al, al
je 0x44696d
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x1c
push 0x21c
push 5
and eax, 1
push 5
shl eax, 0x11
add eax, 0x50000300
push eax
push esi
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
push 0x4c018c
push 0
call esi
test eax, eax
je 0x446973
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cce50]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
jmp 0x446973
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
movsd xmm0, qword [0x4cc768]
xor eax, eax
movsd qword [ebp - 0x1f8], xmm0
mov dword [ebp - 0x1f0], 0x190
mov byte [ebp - 0x1ec], 1
mov byte [ebp - 0x1aa], 0
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4bff50], di
jne 0x4469a0
inc eax
push eax
push 0x4bff50
lea eax, [ebp - 0x1ea]
push 0x20
push eax
call fcn.0048d183
add esp, 0x10
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
je 0x446a38
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x5a
push 0x3c
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0x4c4e94
push 0x4c018c
push 0
call esi
test eax, eax
je 0x446a38
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc990]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
jne 0x446a4b
xor esi, esi
jmp 0x446aba
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x5a
push 0x3c
and eax, 1
push 0xa0
shl eax, 0x11
add eax, 0x50010009
push eax
push 0x4c4eb4
push 0x4c019c
push 0
call esi
test eax, eax
jne 0x446a95
xor esi, esi
jmp 0x446aba
push eax
push 0x15
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
mov esi, eax
movaps xmm0, xmmword [0x4cc9a0]
lea edx, [esi + esi*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
jne 0x446ad1
mov dword [ebp - 0x3c4], edi
jmp 0x446b4c
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x5a
push 0x3c
and eax, 1
push 0x140
shl eax, 0x11
add eax, 0x50010009
push eax
push 0x4c4ec4
push 0x4c019c
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
test eax, eax
jne 0x446b23
mov dword [ebp - 0x3c4], edi
jmp 0x446b4c
push eax
push 0x15
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
movaps xmm0, xmmword [0x4cc9b0]
mov dword [ebp - 0x3c4], eax
lea edx, [eax + eax*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
je 0x446bc5
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 2
push 0x1fe
push 0x5f
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0
push 0x4c018c
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
test eax, eax
je 0x446bc5
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc820]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
push 0
push ecx
lea ecx, [ebp - 0x368]
call fcn.004136f0
mov ecx, dword [ebp - 0x3b4]
push 0x4c4ed4
lea ecx, [ecx + 0x130]
call fcn.0041b170
mov ecx, dword [ebp - 0x3b4]
cmp byte [ecx + 0x160], 0
jne 0x446bfc
xor eax, eax
jmp 0x446c15
cmp word [ecx + 0x140], 8
mov eax, dword [ecx + 0x148]
jne 0x446c15
push eax
call fcn.0048e06c
add esp, 4
test eax, eax
lea ecx, [ebp - 0x368]
push 4
setne byte [ebp - 0x3d9]
test eax, eax
cmovne esi, dword [ebp - 0x3c4]
push esi
call fcn.00414360
test byte [ebp - 0x120], 1
jne 0x446c45
or dword [ebp - 0x120], 1
lea ecx, [ebp - 0x368]
call fcn.00416d40
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
test al, al
je 0x446cc0
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x5a
push 0x78
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0x4c4ee8
push 0x4c018c
push 0
call esi
test eax, eax
je 0x446cc0
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc9c0]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
jne 0x446cd3
xor esi, esi
jmp 0x446d42
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x6e
push 0x78
and eax, 1
push 0xa0
shl eax, 0x11
add eax, 0x50010009
push eax
push 0x4c4f04
push 0x4c019c
push 0
call esi
test eax, eax
jne 0x446d1d
xor esi, esi
jmp 0x446d42
push eax
push 0x15
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
mov esi, eax
movaps xmm0, xmmword [0x4cca80]
lea edx, [esi + esi*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
jne 0x446d59
mov dword [ebp - 0x3c0], edi
jmp 0x446dd4
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x6e
push 0x78
and eax, 1
push 0x140
shl eax, 0x11
add eax, 0x50010009
push eax
push 0x4c4f1c
push 0x4c019c
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
test eax, eax
jne 0x446dab
mov dword [ebp - 0x3c0], edi
jmp 0x446dd4
push eax
push 0x15
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
movaps xmm0, xmmword [0x4cca90]
mov dword [ebp - 0x3c0], eax
lea edx, [eax + eax*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x130
push 0x4c4f30
call fcn.0041b170
mov ecx, dword [ebp - 0x3b4]
cmp byte [ecx + 0x160], 0
jne 0x446dfd
xor eax, eax
jmp 0x446e16
cmp word [ecx + 0x140], 8
mov eax, dword [ecx + 0x148]
jne 0x446e16
push eax
call fcn.0048e06c
add esp, 4
test eax, eax
lea ecx, [ebp - 0x368]
push 4
setne byte [ebp - 0x3da]
test eax, eax
cmovne esi, dword [ebp - 0x3c0]
push esi
call fcn.00414360
test byte [ebp - 0x120], 1
jne 0x446e46
or dword [ebp - 0x120], 1
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
je 0x446ec2
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 2
push 0x1fe
push 0x9b
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0
push 0x4c018c
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
test eax, eax
je 0x446ec2
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc830]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
push 0
push ecx
lea ecx, [ebp - 0x368]
call fcn.004136f0
mov esi, dword [ebp - 0x3b4]
push 0x4c1f08
lea ecx, [esi + 0x130]
call fcn.0041b170
cmp byte [esi + 0x160], 0
jne 0x446ef3
xor ecx, ecx
jmp 0x446f17
cmp word [esi + 0x140], 8
jne 0x446f10
push dword [esi + 0x148]
call fcn.0048e06c
add esp, 4
movzx ecx, ax
jmp 0x446f17
movzx ecx, word [esi + 0x148]
cmp cx, 2
mov dword [ebp - 0x3e4], ecx
mov edx, 0x4c4f54
mov dword [ebp - 0x3d0], 0xffffffff
mov ecx, esi
mov dword [ebp - 0xa0], edi
mov eax, 0x4c4f48
xorps xmm0, xmm0
push 0
cmovne eax, edx
movq qword [ebp - 0xa8], xmm0
push eax
lea ecx, [ecx + 0x130]
call fcn.0041b250
xor esi, esi
mov dword [ebp - 0x84], eax
test eax, eax
je 0x446f77
cmp word [eax], si
je 0x446f77
nop word [eax + eax]
inc esi
cmp word [eax + esi*2], di
jne 0x446f70
xor ecx, ecx
mov dword [ebp - 0xa4], esi
lea eax, [esi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0xa8], eax
test esi, esi
jle 0x446fc6
mov edx, dword [ebp - 0x84]
mov ecx, eax
sub edx, eax
mov edi, esi
nop
mov ax, word [edx + ecx]
lea ecx, [ecx + 2]
mov word [ecx - 2], ax
sub edi, 1
jne 0x446fb0
mov eax, dword [ebp - 0xa8]
xor ecx, ecx
mov byte [ebp - 0xa0], 1
mov word [eax + esi*2], cx
mov eax, dword [ebp - 0x3e4]
mov byte [ebp - 4], 8
cmp ax, 2
jne 0x447117
lea ecx, [ebp - 0x368]
call fcn.00416d40
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
test al, al
je 0x447065
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x5a
push 0xb6
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0x4c4f68
push 0x4c018c
push 0
call esi
test eax, eax
je 0x447065
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc9d0]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
mov byte [ebp - 0xa0], 1
call fcn.00416d40
test al, al
jne 0x44708a
mov dword [ebp - 0x3d0], 0
jmp 0x44724f
test byte [ebp - 0x120], 1
mov eax, 0x50020080
push 0
push dword [ebp - 0x24c]
mov ecx, 0x50000080
cmovne ecx, eax
mov eax, dword [ebp - 0x328]
inc eax
or ecx, 0x10000
push eax
push dword [ebp - 0x134]
push 0x14
push 0x118
push 0xb4
push 0xa0
push ecx
push dword [ebp - 0xa8]
push 0x4c0220
push 0x200
call esi
test eax, eax
jne 0x4470ed
mov dword [ebp - 0x3d0], eax
jmp 0x44724f
push eax
push 0xc
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
mov esi, eax
movaps xmm0, xmmword [0x4cccf0]
lea edx, [esi + esi*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
jmp 0x447249
cmp ax, 1
jne 0x44724f
lea ecx, [ebp - 0x368]
call fcn.00416d40
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
test al, al
je 0x44719f
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x12
push 0x5a
push 0xb6
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0x4c4f80
push 0x4c018c
push 0
call esi
test eax, eax
je 0x44719f
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc9d0]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
lea ecx, [ebp - 0x368]
mov byte [ebp - 0xa0], 1
call fcn.00416d40
test al, al
jne 0x4471c4
mov dword [ebp - 0x3d0], 0
jmp 0x44724f
test byte [ebp - 0x120], 1
mov eax, 0x50022080
push 0
push dword [ebp - 0x24c]
mov ecx, 0x50002080
cmovne ecx, eax
mov eax, dword [ebp - 0x328]
inc eax
or ecx, 0x10000
push eax
push dword [ebp - 0x134]
push 0x14
push 0x118
push 0xb4
push 0xa0
push ecx
push dword [ebp - 0xa8]
push 0x4c0220
push 0x200
call esi
test eax, eax
jne 0x447224
mov dword [ebp - 0x3d0], eax
jmp 0x44724f
push eax
push 0xc
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cccf0]
mov esi, eax
mov eax, dword [ebp - 0x32c]
lea ecx, [esi + esi*8]
movups xmmword [eax + ecx*8 + 0x24], xmm0
mov dword [ebp - 0x3d0], esi
lea ecx, [ebp - 0x368]
call fcn.00416d40
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
test al, al
je 0x4472ca
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 2
push 0x1fe
push 0x5f
and eax, 1
push 0x14
shl eax, 0x11
add eax, 0x50000100
push eax
push 0
push 0x4c018c
push 0
call esi
test eax, eax
je 0x4472ca
push eax
push 0xd
lea ecx, [ebp - 0x368]
call fcn.00416ab0
movaps xmm0, xmmword [0x4cc820]
lea ecx, [eax + eax*8]
mov eax, dword [ebp - 0x32c]
movups xmmword [eax + ecx*8 + 0x24], xmm0
push 0
push ecx
lea ecx, [ebp - 0x368]
call fcn.004136f0
cmp dword [ebp - 0x138], 0
je 0x44735e
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
je 0x44735e
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x1e
push 0x64
push 0xf2
and eax, 1
push 0x122
shl eax, 0x11
add eax, 0x50010000
push eax
push 0x4c033c
push 0x4c019c
push 0
call esi
test eax, eax
je 0x44735e
push eax
push 3
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
movaps xmm0, xmmword [0x4cced0]
lea edx, [eax + eax*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
jmp 0x447360
xor eax, eax
sub esp, 8
mov dword [ebp - 0x3d8], eax
lea ecx, [ebp - 0x368]
push 0x4c4258
push 0xffffffffffffffff
call fcn.00415120
cmp dword [ebp - 0x138], 0
je 0x44740b
lea ecx, [ebp - 0x368]
call fcn.00416d40
test al, al
je 0x44740b
mov eax, dword [ebp - 0x328]
push 0
push dword [ebp - 0x24c]
inc eax
push eax
push dword [ebp - 0x134]
movzx eax, byte [ebp - 0x120]
push 0x20
push 0x78
push 0xf0
and eax, 1
push 0x19a
shl eax, 0x11
add eax, 0x50010000
push eax
push 0x4c4fa0
push 0x4c019c
push 0
call esi
test eax, eax
je 0x44740b
push eax
push 3
lea ecx, [ebp - 0x368]
call fcn.00416ab0
mov ecx, dword [ebp - 0x32c]
movaps xmm0, xmmword [0x4ccf50]
mov dword [ebp - 0x36c], eax
lea edx, [eax + eax*8]
movups xmmword [ecx + edx*8 + 0x24], xmm0
jmp 0x447415
mov dword [ebp - 0x36c], 0
sub esp, 8
lea ecx, [ebp - 0x368]
push 0x4c4fbc
push 0xffffffffffffffff
call fcn.00415120
mov esi, dword [ebp - 0x3d8]
mov eax, 0x1b
mov word [ebp - 0x1a], ax
mov eax, dword [ebp - 0x124]
mov byte [ebp - 0x1c], 1
mov word [ebp - 0x18], si
test eax, eax
je 0x447452
push eax
call dword [sym.imp.USER32.dll_DestroyAcceleratorTable]
push 1
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.USER32.dll_CreateAcceleratorTableW]
xor ecx, ecx
cmp eax, 0xffffffff
push 1
cmove eax, ecx
lea ecx, [ebp - 0x368]
push 1
mov dword [ebp - 0x124], eax
call fcn.0040db40
mov ecx, dword [ebp - 0x3b4]
push 0
call fcn.004284d0
test eax, eax
je 0x4476e1
mov ecx, dword [ebp - 0x3b4]
mov eax, dword [ecx + 0x22c]
cmp eax, 0xfffffffa
je 0x4487ad
lea edx, [ebp - 0x368]
cmp dword [ecx + 0x25c], edx
jne 0x4476cc
cmp eax, esi
je 0x4487ad
cmp eax, dword [ebp - 0x36c]
jne 0x4476cc
push 0x43a370
push 0x445fa0
push 3
push 0x20
lea eax, [ebp - 0x80]
push eax
call fcn.0048a2c3
push 4
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x368]
push dword [ebp - 0x3c4]
call fcn.00415560
push 4
push dword [ebp - 0x3c0]
test eax, eax
mov dword [ebp - 0x3e0], eax
lea ecx, [ebp - 0x368]
setne byte [ebp - 0x3c9]
call fcn.00415560
push dword [ebp - 0x3d0]
test eax, eax
mov dword [ebp - 0x84], eax
lea ecx, [ebp - 0x368]
setne byte [ebp - 0x3b5]
call fcn.00415800
mov esi, eax
mov eax, dword [ebp - 0x3c8]
test esi, esi
jne 0x44757c
test eax, eax
je 0x447554
push eax
call fcn.00489ed3
add esp, 4
push 2
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x8c], 0
call fcn.0048a28e
add esp, 4
mov dword [ebp - 0x3c8], eax
xor ecx, ecx
mov word [eax], cx
jmp 0x44759b
test eax, eax
je 0x447589
push eax
call fcn.00489ed3
add esp, 4
mov eax, esi
mov dword [ebp - 0x3c8], esi
mov dword [ebp - 0x8c], 0
mov cl, byte [ebp - 0x3d9]
mov byte [ebp - 0x88], 1
mov dword [ebp - 0x90], eax
cmp byte [ebp - 0x3c9], cl
jne 0x447682
mov cl, byte [ebp - 0x3da]
cmp byte [ebp - 0x3b5], cl
jne 0x447682
mov ecx, dword [ebp - 0xa8]
mov byte [ebp - 0xa0], 1
cmp eax, ecx
je 0x447600
test eax, eax
je 0x447682
sub eax, ecx
mov esi, ecx
mov dword [ebp - 0x3d4], eax
nop
movzx eax, word [eax + esi]
mov ecx, eax
test ax, ax
jne 0x447629
cmp word [esi], ax
jne 0x44762e
push ecx
mov ecx, dword [ebp - 0x3b4]
lea eax, [ebp - 0x368]
push 0x1c2
push 0x96
push eax
push 0
push 0x4c4ff8
call fcn.00432b40
jmp 0x4476b0
cmp ax, word [esi]
je 0x447674
xor edx, edx
cmp dx, ax
jne 0x44763d
mov dword [ebp - 0x3f0], edx
jmp 0x44764f
push ecx
call fcn.0048e154
movzx eax, ax
add esp, 4
mov dword [ebp - 0x3f0], eax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x44765f
xor eax, eax
jmp 0x44766b
push ecx
call fcn.0048e154
add esp, 4
movzx eax, ax
cmp word [ebp - 0x3f0], ax
jne 0x447682
mov eax, dword [ebp - 0x3d4]
add esi, 2
jmp 0x4475f0
mov esi, dword [ebp - 0x3b4]
lea eax, [ebp - 0x368]
push ecx
push 0x1c2
push 0x96
push eax
push 1
push 0x4c5038
mov ecx, esi
call fcn.00432b40
test eax, eax
jne 0x447778
push 0x43a370
push 3
push 0x20
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 8
push eax
call fcn.0048a16b
mov esi, dword [ebp - 0x3d8]
mov ecx, dword [ebp - 0x3b4]
push 0
call fcn.004284d0
test eax, eax
jne 0x447490
mov edi, 1
push dword [ebp - 0xa8]
call fcn.00489ed3
add esp, 4
lea ecx, [ebp - 0x368]
mov byte [ebp - 4], 0x1a
call fcn.0040c540
mov eax, dword [ebp - 0x32c]
test eax, eax
je 0x447716
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x258]
test eax, eax
je 0x447729
push eax
call fcn.00489ed3
add esp, 4
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0xe4]
mov esi, dword [ebp - 0x100]
test ecx, ecx
je 0x447762
test esi, esi
je 0x4487d7
push dword [ebp - 0xe8]
lea eax, [ebp - 0x100]
push dword [ebp - 0xf8]
push eax
call fcn.0040c930
call fcn.00403550
test esi, esi
je 0x4487d7
push esi
call fcn.00489ed3
add esp, 4
jmp 0x4487d7
mov dword [ebp - 0x370], 0
mov al, byte [ebp - 0x3d9]
mov byte [ebp - 4], 0xe
cmp byte [ebp - 0x3c9], al
je 0x447ac7
mov edi, dword [ebp - 0x3e0]
lea eax, [ebp - 0x370]
mov edx, dword [esi + 0x138]
mov ecx, 0x4c4eb4
push eax
push 0
test edi, edi
mov eax, 0x4c4ec4
push 0
cmove eax, ecx
mov ecx, dword [esi + 0x130]
push eax
call fcn.0041a9b0
test al, al
je 0x447898
mov esi, dword [ebp - 0x370]
lea eax, [ebp - 0x380]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
push eax
call edi
lea eax, [ebp - 0x380]
mov byte [ebp - 4], 0xf
push eax
call edi
test esi, esi
je 0x44785f
mov eax, dword [esi]
lea ecx, [ebp - 0x380]
push 0
push 0
push ecx
push 0
push 0x4c04c0
push esi
call dword [eax + 0x10]
shr eax, 0x1f
xor al, 1
je 0x44785f
cmp word [ebp - 0x380], 8
jne 0x447845
push dword [ebp - 0x378]
call fcn.0048e06c
add esp, 4
mov byte [ebp - 4], 0xe
mov edi, eax
lea eax, [ebp - 0x380]
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_VariantCopy]
call eax
jmp 0x447873
mov edi, dword [ebp - 0x378]
lea eax, [ebp - 0x380]
mov byte [ebp - 4], 0xe
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_VariantCopy]
call eax
jmp 0x447873
lea eax, [ebp - 0x380]
mov byte [ebp - 4], 0xe
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_VariantCopy]
call eax
xor edi, edi
cmp dword [ebp - 0x3e0], 0
mov eax, 0x4c50bc
mov esi, 0x4c50ac
mov ecx, 0x4c5104
cmove esi, eax
test edi, edi
mov eax, 0x4c50e0
cmovne eax, ecx
jmp 0x4478ac
mov eax, 0x4c50bc
test edi, edi
mov esi, 0x4c50ac
cmove esi, eax
mov eax, 0x4c5104
mov edi, 0x4c50cc
mov dword [ebp - 0x98], 0
mov byte [ebp - 0x94], 0
xor edx, edx
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3d8], eax
mov dword [ebp - 0x3d0], edi
mov dword [ebp - 0x3c4], esi
mov dword [ebp - 0x3c0], 0x4c50a4
mov dword [ebp - 0x9c], 0
inc edx
cmp word [edx*2 + 0x4c5120], 0
jne 0x4478f0
xor ecx, ecx
cmp word [eax], cx
je 0x447939
mov edi, 0x4c50a4
mov dword [ebp - 0x3d8], eax
mov dword [ebp - 0x3c0], edi
mov edi, dword [ebp - 0x3c4]
mov dword [ebp - 0x3c4], edi
mov edi, 0x4c50cc
mov dword [ebp - 0x3d0], edi
mov edi, dword [ebp - 0x3e0]
inc ecx
cmp word [edi + ecx*2], 0
jne 0x447931
add edx, ecx
xor ecx, ecx
nop dword [eax]
lea ecx, [ecx + 1]
cmp word [ecx*2 + 0x4c50cc], 0
jne 0x447940
lea edi, [ecx + edx]
test esi, esi
jne 0x447975
mov ecx, dword [ebp - 0x3c0]
mov edx, dword [ebp - 0x3d0]
mov dword [ebp - 0x3c0], ecx
mov dword [ebp - 0x3d0], edx
mov dword [ebp - 0x3d8], eax
jmp 0x4479aa
xor ecx, ecx
cmp word [esi], cx
je 0x4479a8
mov edx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c0], edx
mov edx, dword [ebp - 0x3d0]
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x3d0], edx
inc ecx
cmp word [eax + ecx*2], 0
jne 0x4479a0
add edi, ecx
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c50a4], 0
jne 0x4479b0
add edi, eax
xor ecx, ecx
mov edx, 2
mov dword [ebp - 0x3c4], edi
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edi, 0x4c5120
mov dword [ebp - 0x3bc], eax
add esp, 4
mov ecx, eax
mov edx, 0x54
sub edi, eax
mov word [ecx], dx
add ecx, 2
movzx eax, word [ecx + edi]
mov edx, eax
test ax, ax
jne 0x4479f4
mov edx, dword [ebp - 0x3d8]
test edx, edx
je 0x447a41
movzx eax, word [edx]
mov edx, eax
mov dword [ebp - 0x3d4], edx
mov edx, dword [ebp - 0x3d8]
test ax, ax
je 0x447a41
movzx eax, ax
nop dword [eax + eax]
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x447a30
mov edi, dword [ebp - 0x3d0]
mov eax, 0x20
nop dword [eax]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
add ecx, 2
test ax, ax
jne 0x447a50
test esi, esi
je 0x447a81
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x447a81
nop
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x447a70
mov edi, dword [ebp - 0x3c0]
mov eax, 0x2e
nop dword [eax]
mov word [ecx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
lea ecx, [ecx + 2]
test ax, ax
jne 0x447a90
mov esi, dword [ebp - 0x3bc]
xor eax, eax
mov edi, dword [ebp - 0x3c4]
mov word [ecx], ax
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], edi
mov byte [ebp - 0x94], 1
jmp 0x447ac9
xor esi, esi
mov al, byte [ebp - 0x3da]
cmp byte [ebp - 0x3b5], al
je 0x447e32
mov dword [ebp - 0xc8], 0
xor eax, eax
mov byte [ebp - 0xc0], 0
nop
inc eax
cmp word [eax*2 + 0x4c4f30], 0
jne 0x447af0
mov dword [ebp - 0xc4], eax
xor ecx, ecx
inc eax
mov esi, 2
mul esi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0xc4]
xor ecx, ecx
mov dword [ebp - 0xc8], edx
test eax, eax
jle 0x447b4d
mov ax, word [ecx*2 + 0x4c4f30]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc8]
cmp ecx, eax
jl 0x447b30
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0xc0], 1
mov eax, dword [ebp - 0x84]
neg eax
mov word [ebp - 0xb8], si
sbb eax, eax
movzx eax, ax
mov word [ebp - 0xb0], ax
lea eax, [ebp - 0x370]
mov byte [ebp - 4], 0x11
push eax
push 1
lea eax, [ebp - 0xc8]
push eax
mov eax, dword [ebp - 0x3b4]
push 0x4c3248
mov edx, dword [eax + 0x138]
mov ecx, dword [eax + 0x130]
call fcn.0041a9b0
test al, al
je 0x447c52
mov esi, dword [ebp - 0x370]
lea eax, [ebp - 0x390]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x390]
mov byte [ebp - 4], 0x12
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
test esi, esi
je 0x447c3a
mov eax, dword [esi]
lea ecx, [ebp - 0x390]
push 0
push 0
push ecx
push 0
push 0x4c04c0
push esi
call dword [eax + 0x10]
shr eax, 0x1f
xor al, 1
je 0x447c3a
cmp word [ebp - 0x390], 8
jne 0x447c21
push dword [ebp - 0x388]
call fcn.0048e06c
add esp, 4
mov byte [ebp - 4], 0x11
mov esi, eax
lea eax, [ebp - 0x390]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x447c4d
mov esi, dword [ebp - 0x388]
lea eax, [ebp - 0x390]
push eax
mov byte [ebp - 4], 0x11
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x447c4d
lea eax, [ebp - 0x390]
mov byte [ebp - 4], 0x11
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
xor esi, esi
test esi, esi
sete al
cmp dword [ebp - 0x84], 0
mov ecx, 0x4c5134
mov edx, 0x4c5140
mov byte [ebp - 0x94], 0
cmove ecx, edx
mov esi, 0x4c50e0
test al, al
mov dword [ebp - 0x3e0], ecx
mov eax, 0x4c5104
cmove esi, eax
mov dword [ebp - 0x3d4], esi
test edi, edi
jne 0x447cae
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x447ca8
cmp word [eax], di
je 0x447ca8
nop dword [eax + eax]
inc edi
cmp word [eax + edi*2], 0
jne 0x447ca0
mov dword [ebp - 0x98], edi
xor eax, eax
lea eax, [eax + 1]
cmp word [eax*2 + 0x4c5158], 0
jne 0x447cb0
lea edx, [eax + edi]
xor eax, eax
cmp word [esi], ax
je 0x447cd0
inc eax
cmp word [esi + eax*2], 0
jne 0x447cc8
add edx, eax
xor eax, eax
cmp word [ecx], ax
je 0x447ce8
nop dword [eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x447ce0
lea edi, [eax + edx]
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c50a4], 0
jne 0x447cf0
add edi, eax
xor ecx, ecx
mov edx, 2
mov dword [ebp - 0x3c4], edi
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov dword [ebp - 0x84], eax
mov edx, eax
mov eax, dword [ebp - 0x3bc]
add esp, 4
test eax, eax
je 0x447d55
movzx ecx, word [eax]
mov eax, ecx
test cx, cx
je 0x447d55
mov esi, dword [ebp - 0x3bc]
sub esi, edx
mov word [edx], cx
add edx, 2
movzx eax, word [edx + esi]
mov ecx, eax
test ax, ax
jne 0x447d44
mov esi, 0x4c5158
mov ecx, 0x54
sub esi, edx
mov word [edx], cx
add edx, 2
movzx eax, word [edx + esi]
mov ecx, eax
test ax, ax
jne 0x447d61
mov esi, dword [ebp - 0x3d4]
movzx eax, word [esi]
mov ecx, eax
test ax, ax
je 0x447d93
mov word [edx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add edx, 2
test ax, ax
jne 0x447d82
mov ecx, dword [ebp - 0x3e0]
movzx eax, word [ecx]
mov esi, eax
test ax, ax
je 0x447db4
mov word [edx], ax
lea ecx, [ecx + 2]
movzx eax, word [ecx]
add edx, 2
test ax, ax
jne 0x447da3
mov eax, 0x2e
mov edi, 0x4c50a4
nop
mov word [edx], ax
lea edi, [edi + 2]
movzx eax, word [edi]
lea edx, [edx + 2]
test ax, ax
jne 0x447dc0
mov edi, dword [ebp - 0x3c4]
xor eax, eax
mov word [edx], ax
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x447def
push eax
call fcn.00489ed3
add esp, 4
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0xb8]
push eax
mov dword [ebp - 0x3bc], esi
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], edi
mov byte [ebp - 0x94], 1
mov byte [ebp - 4], 0xe
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x447e32
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x3e4]
cmp ax, 2
jne 0x4483d4
mov ecx, dword [ebp - 0x3c8]
mov edx, dword [ebp - 0xa8]
mov byte [ebp - 0xa0], 1
cmp ecx, edx
je 0x447e8e
test ecx, ecx
je 0x448075
mov eax, ecx
mov esi, edx
sub eax, edx
mov dword [ebp - 0x3d4], eax
nop dword [eax]
movzx eax, word [esi + eax]
mov ecx, eax
test ax, ax
jne 0x44801c
cmp word [esi], ax
jne 0x448021
mov esi, dword [ebp - 0x3bc]
mov eax, 2
test edi, edi
jne 0x447eae
test esi, esi
je 0x447ea8
cmp word [esi], di
je 0x447ea8
inc edi
cmp word [esi + edi*2], 0
jne 0x447ea0
mov dword [ebp - 0x98], edi
cmp edi, eax
cmovle eax, edi
test edi, edi
je 0x447ec5
sub edi, eax
xor eax, eax
mov dword [ebp - 0x98], edi
mov word [esi + edi*2], ax
mov byte [ebp - 0x94], 0
test edi, edi
jne 0x447eee
test esi, esi
je 0x447ee8
cmp word [esi], di
je 0x447ee8
nop dword [eax]
inc edi
cmp word [esi + edi*2], 0
jne 0x447ee0
mov dword [ebp - 0x98], edi
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c5208], 0
jne 0x447ef0
add eax, edi
xor ecx, ecx
mov dword [ebp - 0x84], eax
mov edx, 2
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edi, 0x4c5208
mov dword [ebp - 0x3d4], eax
add esp, 4
mov edx, esi
mov ecx, eax
mov esi, 0x4f
sub edi, eax
mov word [ecx], si
add ecx, 2
movzx eax, word [ecx + edi]
mov esi, eax
test ax, ax
jne 0x447f34
mov edi, dword [ebp - 0x3bc]
test edi, edi
je 0x447f71
movzx eax, word [edi]
mov esi, eax
test ax, ax
je 0x447f71
nop dword [eax]
mov word [ecx], ax
lea edx, [edx + 2]
movzx eax, word [edx]
add ecx, 2
test ax, ax
jne 0x447f60
xor eax, eax
mov word [ecx], ax
test edi, edi
je 0x447f83
push edi
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x3d4]
mov ecx, eax
mov esi, dword [ebp - 0x3b4]
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x9c], ecx
mov ecx, dword [ebp - 0x84]
push ecx
push 0x1c2
mov dword [ebp - 0x98], ecx
lea ecx, [ebp - 0x368]
push 0xc8
push ecx
push 0
push eax
mov ecx, esi
mov byte [ebp - 0x94], 1
call fcn.00432b40
mov edx, dword [esi + 0x138]
lea eax, [ebp - 0x370]
mov ecx, dword [esi + 0x130]
push eax
push 0
push 0
push 0x4c2018
call fcn.0041a9b0
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x370]
test eax, eax
je 0x448001
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x43a370
push 3
push 0x20
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 8
push eax
call fcn.0048a16b
jmp 0x4476e1
cmp ax, word [esi]
je 0x448067
xor edx, edx
cmp dx, ax
jne 0x448030
mov dword [ebp - 0x84], edx
jmp 0x448042
push ecx
call fcn.0048e154
movzx eax, ax
add esp, 4
mov dword [ebp - 0x84], eax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x448052
xor eax, eax
jmp 0x44805e
push ecx
call fcn.0048e154
add esp, 4
movzx eax, ax
cmp word [ebp - 0x84], ax
jne 0x448075
mov eax, dword [ebp - 0x3d4]
add esi, 2
jmp 0x447e70
xor al, al
mov dword [ebp - 0xc8], 0
mov byte [ebp - 0xc0], al
xor eax, eax
nop dword [eax]
inc eax
cmp word [eax*2 + 0x4c4f48], 0
jne 0x448090
mov dword [ebp - 0xc4], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0xc4]
xor ecx, ecx
mov dword [ebp - 0xc8], edx
test eax, eax
jle 0x4480ed
mov ax, word [ecx*2 + 0x4c4f48]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc8]
cmp ecx, eax
jl 0x4480d0
xor ecx, ecx
mov word [edx + eax*2], cx
mov byte [ebp - 0xc0], 1
mov esi, dword [ebp - 0x3c8]
mov byte [ebp - 4], 0x13
test esi, esi
jne 0x44812b
push 2
call fcn.0048a28e
mov esi, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x3c8], esi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], eax
mov word [esi], ax
mov eax, 8
mov byte [ebp - 0x88], 1
push esi
mov word [ebp - 0xb8], ax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0xb0], eax
test eax, eax
jne 0x448157
test esi, esi
jne 0x448868
lea eax, [ebp - 0x370]
mov byte [ebp - 4], 0x14
push eax
push 1
lea eax, [ebp - 0xc8]
push eax
mov eax, dword [ebp - 0x3b4]
push 0x4c3248
mov edx, dword [eax + 0x138]
mov ecx, dword [eax + 0x130]
call fcn.0041a9b0
test al, al
je 0x448236
mov esi, dword [ebp - 0x370]
lea eax, [ebp - 0x3a0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x3a0]
mov byte [ebp - 4], 0x15
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
test esi, esi
je 0x44821c
mov eax, dword [esi]
lea ecx, [ebp - 0x3a0]
push 0
push 0
push ecx
push 0
push 0x4c04c0
push esi
call dword [eax + 0x10]
shr eax, 0x1f
xor al, 1
je 0x44821c
cmp word [ebp - 0x3a0], 8
jne 0x448203
push dword [ebp - 0x398]
call fcn.0048e06c
add esp, 4
mov byte [ebp - 4], 0x14
mov esi, eax
lea eax, [ebp - 0x3a0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x44822f
mov esi, dword [ebp - 0x398]
lea eax, [ebp - 0x3a0]
push eax
mov byte [ebp - 4], 0x14
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x44822f
lea eax, [ebp - 0x3a0]
mov byte [ebp - 4], 0x14
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
xor esi, esi
test esi, esi
sete al
test al, al
mov ecx, 0x4c50e0
mov byte [ebp - 0x94], 0
mov eax, 0x4c5104
cmove ecx, eax
mov dword [ebp - 0x36c], ecx
test edi, edi
jne 0x448271
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x44826b
cmp word [eax], di
je 0x44826b
inc edi
cmp word [eax + edi*2], 0
jne 0x448263
mov dword [ebp - 0x98], edi
xor eax, eax
nop dword [eax]
nop word [eax + eax]
lea eax, [eax + 1]
cmp word [eax*2 + 0x4c51a8], 0
jne 0x448280
lea edx, [edi + eax]
xor eax, eax
cmp word [ecx], ax
je 0x4482a0
inc eax
cmp word [ecx + eax*2], 0
jne 0x448298
lea edi, [eax + edx]
xor eax, eax
nop word [eax + eax]
inc eax
cmp word [eax*2 + 0x4c5198], 0
jne 0x4482b0
add edi, eax
xor ecx, ecx
mov edx, 2
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov dword [ebp - 0x84], eax
mov edx, eax
mov eax, dword [ebp - 0x3bc]
add esp, 4
test eax, eax
je 0x448311
movzx ecx, word [eax]
mov eax, ecx
test cx, cx
je 0x448311
mov esi, dword [ebp - 0x3bc]
sub esi, edx
nop
mov word [edx], cx
add edx, 2
movzx eax, word [esi + edx]
mov ecx, eax
test ax, ax
jne 0x448300
mov esi, 0x4c51a8
mov ecx, 0x54
sub esi, edx
nop dword [eax]
mov word [edx], cx
add edx, 2
movzx eax, word [esi + edx]
mov ecx, eax
test ax, ax
jne 0x448320
mov ecx, dword [ebp - 0x36c]
movzx eax, word [ecx]
mov esi, eax
mov dword [ebp - 0x3d4], esi
mov esi, 0x4c5198
test ax, ax
je 0x448361
movzx eax, ax
nop
mov word [edx], ax
lea ecx, [ecx + 2]
movzx eax, word [ecx]
add edx, 2
test ax, ax
jne 0x448350
mov eax, 0x20
mov word [edx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
lea edx, [edx + 2]
test ax, ax
jne 0x448366
xor eax, eax
mov word [edx], ax
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x44838f
push eax
call fcn.00489ed3
add esp, 4
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0xb8]
push eax
mov dword [ebp - 0x3bc], esi
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], edi
mov byte [ebp - 4], 0xe
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x447e8e
push eax
call fcn.00489ed3
add esp, 4
jmp 0x447e8e
cmp ax, 1
jne 0x447e8e
mov ecx, dword [ebp - 0x3c8]
mov edx, dword [ebp - 0xa8]
mov byte [ebp - 0xa0], al
cmp ecx, edx
je 0x447e8e
test ecx, ecx
je 0x44847c
mov eax, ecx
mov esi, edx
sub eax, edx
mov dword [ebp - 0x3d4], eax
nop dword [eax]
movzx eax, word [esi + eax]
mov ecx, eax
test ax, ax
jne 0x448426
cmp word [esi], ax
je 0x447e88
jmp 0x44842b
cmp ax, word [esi]
je 0x448471
xor edx, edx
cmp dx, ax
jne 0x44843a
mov dword [ebp - 0x84], edx
jmp 0x44844c
push ecx
call fcn.0048e154
movzx eax, ax
add esp, 4
mov dword [ebp - 0x84], eax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x44845c
xor eax, eax
jmp 0x448468
push ecx
call fcn.0048e154
add esp, 4
movzx eax, ax
cmp word [ebp - 0x84], ax
jne 0x44847c
mov eax, dword [ebp - 0x3d4]
add esi, 2
jmp 0x448410
xor al, al
mov dword [ebp - 0xc8], 0
mov byte [ebp - 0xc0], al
xor eax, eax
inc eax
cmp word [eax*2 + 0x4c4f54], 0
jne 0x448490
mov dword [ebp - 0xc4], eax
xor ecx, ecx
inc eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0xc4]
xor ecx, ecx
mov dword [ebp - 0xc8], edx
test eax, eax
jle 0x4484ed
mov ax, word [ecx*2 + 0x4c4f54]
mov word [edx + ecx*2], ax
inc ecx
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc8]
cmp ecx, eax
jl 0x4484d0
xor ecx, ecx
mov word [edx + eax*2], cx
lea ecx, [ebp - 0x90]
mov byte [ebp - 0xc0], 1
call fcn.00402080
mov ecx, 0x17
mov dword [ebp - 0xb0], eax
mov word [ebp - 0xb8], cx
lea eax, [ebp - 0x370]
mov byte [ebp - 4], 0x16
push eax
push 1
lea eax, [ebp - 0xc8]
push eax
mov eax, dword [ebp - 0x3b4]
push 0x4c3248
mov edx, dword [eax + 0x138]
mov ecx, dword [eax + 0x130]
call fcn.0041a9b0
test al, al
je 0x4485f6
mov esi, dword [ebp - 0x370]
lea eax, [ebp - 0x3b0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x3b0]
mov byte [ebp - 4], 0x17
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
test esi, esi
je 0x4485dc
mov eax, dword [esi]
lea ecx, [ebp - 0x3b0]
push 0
push 0
push ecx
push 0
push 0x4c04c0
push esi
call dword [eax + 0x10]
shr eax, 0x1f
xor al, 1
je 0x4485dc
cmp word [ebp - 0x3b0], 8
jne 0x4485c3
push dword [ebp - 0x3a8]
call fcn.0048e06c
add esp, 4
mov byte [ebp - 4], 0x16
mov esi, eax
lea eax, [ebp - 0x3b0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x4485ef
mov esi, dword [ebp - 0x3a8]
lea eax, [ebp - 0x3b0]
push eax
mov byte [ebp - 4], 0x16
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x4485ef
lea eax, [ebp - 0x3b0]
mov byte [ebp - 4], 0x16
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
xor esi, esi
test esi, esi
sete al
test al, al
mov ecx, 0x4c50e0
mov byte [ebp - 0x94], 0
mov eax, 0x4c5104
cmove ecx, eax
mov dword [ebp - 0x36c], ecx
test edi, edi
jne 0x448631
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x44862b
cmp word [eax], di
je 0x44862b
inc edi
cmp word [eax + edi*2], 0
jne 0x448623
mov dword [ebp - 0x98], edi
xor eax, eax
nop dword [eax]
nop word [eax + eax]
lea eax, [eax + 1]
cmp word [eax*2 + 0x4c51d4], 0
jne 0x448640
lea edx, [eax + edi]
xor eax, eax
cmp word [ecx], ax
je 0x448660
inc eax
cmp word [ecx + eax*2], 0
jne 0x448658
lea edi, [eax + edx]
xor eax, eax
nop word [eax + eax]
inc eax
cmp word [eax*2 + 0x4c5198], 0
jne 0x448670
add edi, eax
xor ecx, ecx
mov edx, 2
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048a28e
mov dword [ebp - 0x84], eax
mov edx, eax
mov eax, dword [ebp - 0x3bc]
add esp, 4
test eax, eax
je 0x4486d1
movzx ecx, word [eax]
mov eax, ecx
test cx, cx
je 0x4486d1
mov esi, dword [ebp - 0x3bc]
sub esi, edx
nop
mov word [edx], cx
add edx, 2
movzx eax, word [esi + edx]
mov ecx, eax
test ax, ax
jne 0x4486c0
mov esi, 0x4c51d4
mov ecx, 0x54
sub esi, edx
nop dword [eax]
mov word [edx], cx
add edx, 2
movzx eax, word [esi + edx]
mov ecx, eax
test ax, ax
jne 0x4486e0
mov ecx, dword [ebp - 0x36c]
movzx eax, word [ecx]
mov esi, eax
mov dword [ebp - 0x3d4], esi
mov esi, 0x4c5198
test ax, ax
je 0x448721
movzx eax, ax
nop
mov word [edx], ax
lea ecx, [ecx + 2]
movzx eax, word [ecx]
add edx, 2
test ax, ax
jne 0x448710
mov eax, 0x20
mov word [edx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
lea edx, [edx + 2]
test ax, ax
jne 0x448726
xor eax, eax
mov word [edx], ax
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x44874f
push eax
call fcn.00489ed3
add esp, 4
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0xb8]
push eax
mov dword [ebp - 0x3bc], esi
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], edi
mov byte [ebp - 4], 0xe
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x44879c
push eax
call fcn.00489ed3
mov ecx, dword [ebp - 0x90]
add esp, 4
mov dword [ebp - 0x3c8], ecx
jmp 0x447e8e
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x3c8], eax
jmp 0x447e8e
or edi, 0xffffffff
jmp 0x4476e6
push ecx
push 0x1c2
push 0x96
lea eax, [edx + 0x2a8]
mov ecx, edx
push eax
push 0
push 0x4c49d8
call fcn.00432b40
xor edi, edi
mov eax, dword [ebp - 0x3ec]
test eax, eax
je 0x4487ea
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x3e8]
test eax, eax
je 0x4487fd
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x3bc]
test eax, eax
je 0x448810
push eax
call fcn.00489ed3
add esp, 4
mov eax, dword [ebp - 0x3c8]
test eax, eax
je 0x448823
push eax
call fcn.00489ed3
add esp, 4
mov eax, edi
jmp 0x44884a
push ecx
push 0x1c2
push 0x96
lea eax, [edi + 0x2a8]
mov ecx, edi
push eax
push 0
push 0x4c3bf0
call fcn.00432b40
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00489ec5
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x8007000e
call fcn.00489b60
int3