Function at 0x46bc30
Capabilities:
Get file size
Inspect section memory permissions
Parse pe header
Read file via mapping

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 0x52cdd2
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x578
mov eax, dword [0x566090]
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 - 0x580], edi
mov ecx, dword [ebx + 0x18]
xor esi, esi
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0x20]
mov dword [ebp - 0x57c], ecx
mov ecx, dword [ebx + 0xc]
mov dword [ebp - 0x570], ecx
mov ecx, dword [ebx + 0x10]
mov dword [ebp - 0x574], ecx
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x578], ecx
mov ecx, dword [ebx + 0x1c]
mov dword [ebp - 0x53c], eax
mov dword [ebp - 0x564], eax
mov dword [ebp - 0x52c], ecx
mov dword [ebp - 0x560], edx
mov dword [ebp - 0x530], esi
mov dword [ebp - 0x538], esi
test ecx, ecx
jne 0x46bed3
lea edx, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0x80658072
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x88], 0x80208074
mov dword [ebp - 0x84], 0x80738069
mov dword [ebp - 0x80], 0x806e8020
mov dword [ebp - 0x7c], 0x806c8075
mov dword [ebp - 0x78], 0x8070806c
mov dword [ebp - 0x74], 0x80728074
mov dword [ebp - 0x70], 0x8000
call fcn.00419a70
mov dword [ebp - 4], esi
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x68]
cmovae eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 1
call fcn.00444e70
mov byte [ebp - 4], 2
lea edi, [ebp - 0x1b0]
cmp dword [ebp - 0x19c], 8
mov ecx, 0x2d
mov byte [ebp - 0x20], 0
push dword [ebp - 0x20]
cmovae edi, dword [ebp - 0x1b0]
push ecx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x38], 0x290028
mov dword [ebp - 0x34], 0x2d0020
mov dword [ebp - 0x30], 0x20
call fcn.00459960
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
call fcn.00419450
lea ecx, [ebp - 0xe8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x248]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x38]
mov edx, eax
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push edi
push 0
push esi
push 8
push eax
call fcn.0043ebb0
mov edx, dword [ebp - 0x19c]
add esp, 0x14
cmp edx, 8
jb 0x46be25
mov ecx, dword [ebp - 0x1b0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46be1b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709a2
push edx
push ecx
call fcn.004fc7e0
add esp, 8
mov edx, dword [ebp - 0x54]
xor eax, eax
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 7
mov word [ebp - 0x1b0], ax
cmp edx, 8
jb 0x46be7c
mov ecx, dword [ebp - 0x68]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46be72
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709a2
push edx
push ecx
call fcn.004fc7e0
add esp, 8
mov edx, dword [ebp - 0x3c]
xor eax, eax
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 7
mov word [ebp - 0x68], ax
cmp edx, 8
jb 0x470982
mov ecx, dword [ebp - 0x50]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46bec4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709a2
push edx
push ecx
call fcn.004fc7e0
add esp, 8
jmp 0x470982
test eax, eax
je 0x470749
cmp dword [ebp - 0x570], esi
je 0x470749
cmp dword [ebp - 0x574], esi
je 0x470749
cmp dword [ebp - 0x578], esi
je 0x470749
cmp dword [ebp - 0x57c], esi
je 0x470749
call fcn.00441aa0
mov edx, 0x8074
mov dword [ebp - 0x550], 0x8068
mov dword [ebp - 0x558], 0x803d
mov dword [ebp - 0x540], 0x807b
mov eax, dword [eax]
lea ecx, [edx - 0x54]
mov dword [ebp - 0x544], 0x807d
cmp dword [eax], esi
je 0x46c0ca
mov eax, dword [ebp - 0x550]
mov word [ebp - 0x132], ax
mov eax, dword [ebp - 0x558]
mov word [ebp - 0x12e], ax
mov eax, dword [ebp - 0x540]
mov word [ebp - 0x134], dx
lea edx, [ebp - 0x140]
mov word [ebp - 0x130], cx
mov word [ebp - 0x12c], cx
lea ecx, [ebp - 0x68]
mov word [ebp - 0x12a], ax
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0x140], 0x80758066
mov dword [ebp - 0x13c], 0x806c806c
mov dword [ebp - 0x138], 0x80618070
mov word [ebp - 0x128], ax
mov dword [ebp - 0x126], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 6
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x538], 0x200001
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x564]
push eax
call fcn.0041cd30
add esp, 4
mov dword [ebp - 4], 7
lea ecx, [ebp - 0x1b0]
push eax
mov dword [ebp - 0x538], 0x200003
call fcn.00444e70
mov dword [ebp - 4], 8
lea edi, [ebp - 0x1b0]
cmp dword [ebp - 0x19c], 8
mov ecx, 0x2d
mov byte [ebp - 0x20], 0
mov esi, 0x600007
push dword [ebp - 0x20]
cmovae edi, dword [ebp - 0x1b0]
push ecx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x530], esi
mov dword [ebp - 0x538], esi
mov dword [ebp - 0x38], 0x290028
mov dword [ebp - 0x34], 0x2d0020
mov dword [ebp - 0x30], 0x20
call fcn.00459960
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x120]
call fcn.00419450
lea ecx, [ebp - 0xe8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x248]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x38]
mov edx, eax
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push edi
push 0
push esi
push 0
push eax
call fcn.0043ebb0
mov edi, dword [ebp - 0x580]
add esp, 0x14
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x530]
test al, 4
je 0x46c147
mov edx, dword [ebp - 0x19c]
and eax, 0xfffffffb
mov dword [ebp - 0x530], eax
cmp edx, 8
jb 0x46c12a
mov ecx, dword [ebp - 0x1b0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46c11a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709a7
push edx
push ecx
call fcn.004fc7e0
mov eax, dword [ebp - 0x530]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 7
mov word [ebp - 0x1b0], cx
mov dword [ebp - 4], 6
test al, 2
je 0x46c1af
mov edx, dword [ebp - 0x3c]
and eax, 0xfffffffd
mov dword [ebp - 0x530], eax
cmp edx, 8
jb 0x46c19b
mov ecx, dword [ebp - 0x50]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46c18b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709a7
push edx
push ecx
call fcn.004fc7e0
mov eax, dword [ebp - 0x530]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 7
mov word [ebp - 0x50], cx
mov dword [ebp - 4], 0xffffffff
test al, 1
je 0x46c1fd
mov edx, dword [ebp - 0x54]
and eax, 0xfffffffe
mov dword [ebp - 0x530], eax
cmp edx, 8
jb 0x46c1fd
mov ecx, dword [ebp - 0x68]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46c1f3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709a7
push edx
push ecx
call fcn.004fc7e0
add esp, 8
mov eax, dword [ebp - 0x52c]
xor ecx, ecx
mov dword [eax], 0x54f
mov eax, dword [ebp - 0x57c]
mov word [eax], cx
mov eax, dword [ebp - 0x578]
mov word [eax], cx
mov eax, dword [ebp - 0x574]
mov word [eax], cx
mov eax, dword [ebp - 0x570]
mov word [eax], cx
mov ecx, edi
call fcn.0046b430
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocString
push dword [ebp - 0x53c]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ecx, dword [edi + 4]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x53c], eax
mov dword [ebp - 0x20], ecx
cmp ecx, 0xffffffff
je 0x46c28f
test ecx, ecx
je 0x46c28f
call esi
push dword [ebp - 0x20]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x53c]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi + 4], eax
cmp eax, 0xffffffff
je 0x4702e9
test eax, eax
je 0x4702e9
lea ecx, [edi + 0x18]
push ecx
push eax
mov dword [ebp - 0x20], ecx
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x46c494
call esi
mov esi, dword [ebp - 0x52c]
mov dword [esi], eax
lea eax, [ebp - 0x68]
push eax
call fcn.004709c0
mov dword [ebp - 4], 0xc
cmp dword [eax + 0x14], 8
jb 0x46c2db
mov eax, dword [eax]
push esi
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x50]
call fcn.0041b220
add esp, 4
push eax
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0xd
call fcn.00444e70
or dword [ebp - 0x530], 0x2000000
mov byte [ebp - 4], 0xe
lea edi, [ebp - 0x1b0]
cmp dword [ebp - 0x19c], 8
mov ecx, 0x2d
mov byte [ebp - 0x20], 0
push dword [ebp - 0x20]
cmovae edi, dword [ebp - 0x1b0]
push ecx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x38], 0x290028
mov dword [ebp - 0x34], 0x2d0020
mov dword [ebp - 0x30], 0x20
call fcn.00459960
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
call fcn.00419450
lea ecx, [ebp - 0xe8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x248]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x38]
mov edx, eax
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push edi
push 0
push esi
push 8
push eax
call fcn.0043ebb0
mov byte [ebp - 4], 0xd
add esp, 0x14
mov edx, dword [ebp - 0x19c]
cmp edx, 8
jb 0x46c3e1
mov ecx, dword [ebp - 0x1b0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46c3d7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709ac
push edx
push ecx
call fcn.004fc7e0
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 7
mov word [ebp - 0x1b0], ax
cmp edx, 8
jb 0x46c43c
mov ecx, dword [ebp - 0x50]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46c432
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709ac
push edx
push ecx
call fcn.004fc7e0
add esp, 8
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 7
mov word [ebp - 0x50], ax
cmp edx, 8
jb 0x4705b0
mov ecx, dword [ebp - 0x68]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4705a6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4709ac
jmp 0x4705a6
call fcn.00441aa0
mov dword [ebp - 0x584], 0x805f
mov dword [ebp - 0x56c], 0x807a
mov eax, dword [eax]
cmp dword [eax], 0
je 0x46c677
mov eax, dword [ebp - 0x584]
lea edx, [ebp - 0x8c]
mov ecx, dword [ebp - 0x558]
mov word [ebp - 0x84], ax
mov eax, dword [ebp - 0x56c]
mov word [ebp - 0x7e], ax
mov eax, 0x8020
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0x540]
mov word [ebp - 0x78], cx
lea ecx, [ebp - 0x68]
mov word [ebp - 0x74], ax
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0x8c], 0x80698066
mov dword [ebp - 0x88], 0x8065806c
mov dword [ebp - 0x82], 0x80698073
mov dword [ebp - 0x7c], 0x80208065
mov word [ebp - 0x72], ax
mov dword [ebp - 0x70], 0x8000
call fcn.00419a70
mov esi, dword [ebp - 0x530]
or esi, 0x4000000
mov dword [ebp - 4], 0xf
lea edx, [ebp - 0x68]
mov ecx, dword [ebp - 0x20]
or esi, 8
cmp dword [ebp - 0x54], 8
mov dword [ebp - 0x538], esi
cmovae edx, dword [ebp - 0x68]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x24], ecx
mov ecx, edx
mov dword [ebp - 0x28], eax
lea edi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x46c570
sub ecx, edi
sub esp, 0x10
mov eax, esp
sar ecx, 1
lea edi, [ebp - 0x28]
push ecx
push edx
lea ecx, [ebp - 0x1b0]
mov dword [eax], 3
mov dword [eax + 4], 0
mov dword [eax + 8], edi
call fcn.00426fd0
add esp, 0x18
or esi, 0x8000000
lea eax, [ebp - 0x1b0]
mov dword [ebp - 4], 0x10
or esi, 0x10
lea ecx, [ebp - 0x50]
push eax
mov dword [ebp - 0x538], esi
call fcn.00444e70
or esi, 0x10000000
mov dword [ebp - 4], 0x11
lea edi, [ebp - 0x50]
or esi, 0x20
mov byte [ebp - 0x20], 0
push dword [ebp - 0x20]
cmp dword [ebp - 0x3c], 8
mov ecx, 0x2d
push ecx
cmovae edi, dword [ebp - 0x50]
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x530], esi
mov dword [ebp - 0x538], esi
mov dword [ebp - 0x38], 0x290028
mov dword [ebp - 0x34], 0x2d0020
mov dword [ebp - 0x30], 0x20
call fcn.00459960
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
call fcn.00419450
lea ecx, [ebp - 0xe8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x248]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x38]
mov edx, eax
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push edi
push 0
push esi
push 0
push eax
call fcn.0043ebb0
mov edi, dword [ebp - 0x580]
add esp, 0x14
mov eax, dword [ebp - 0x530]
test al, 0x20
je 0x46c698
and eax, 0xffffffdf
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x530], eax
call fcn.00445ad0
mov eax, dword [ebp - 0x530]
test al, 0x10
je 0x46c6b6
and eax, 0xffffffef
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 0x530], eax
call fcn.00445ad0
mov eax, dword [ebp - 0x530]
mov dword [ebp - 4], 0xffffffff
test al, 8
je 0x46c6d2
and eax, 0xfffffff7
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x530], eax
call fcn.00445ad0
mov ecx, dword [edi + 0x1c]
lea esi, [edi + 0x18]
mov eax, dword [esi]
test ecx, ecx
jl 0x4705b0
jg 0x46c6ec
test eax, eax
je 0x4705b0
push 0
push eax
push ecx
push 2
push 0
push dword [edi + 4]
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov ecx, dword [edi + 8]
mov dword [ebp - 0x53c], eax
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x46c733
cmp ecx, 0xffffffff
je 0x46c733
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [ebp - 0x20]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x53c]
lea esi, [edi + 0x18]
mov dword [edi + 8], eax
test eax, eax
je 0x47022a
cmp eax, 0xffffffff
je 0x47022a
push 0
push 0
push 0
push 4
push eax
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ecx, eax
mov eax, dword [edi + 0xc]
mov dword [edi + 0xc], ecx
test eax, eax
je 0x46c76c
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov ecx, dword [edi + 0xc]
test ecx, ecx
jne 0x46c860
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, dword [ebp - 0x52c]
mov dword [esi], eax
lea eax, [ebp - 0x68]
push eax
call fcn.00470c00
mov dword [ebp - 4], 0x15
cmp dword [eax + 0x14], 8
jb 0x46c79a
mov eax, dword [eax]
push esi
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x11c]
call fcn.0041b220
add esp, 4
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x16
call fcn.00444e70
or dword [ebp - 0x530], 0x40000000
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 8
lea ecx, [ebp - 0x38]
cmovae eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
call fcn.00419750
lea ecx, [ebp - 0x230]
mov edi, eax
call fcn.00459940
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
mov esi, eax
call fcn.00419450
push esi
mov edx, eax
lea ecx, [ebp - 0x100]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x2e8]
mov edx, eax
push edi
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push dword [ebp - 0x20]
push 0
push esi
push 8
push eax
call fcn.0043ebb0
add esp, 0x14
lea ecx, [ebp - 0x50]
call fcn.00445ad0
lea ecx, [ebp - 0x11c]
call fcn.00445ad0
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.00445ad0
jmp 0x4705b0
mov eax, dword [esi]
lea edx, [edi + 0x10]
add eax, ecx
mov dword [ebp - 0x54c], edx
mov dword [edx], eax
cmp eax, ecx
ja 0x46ca47
mov ecx, dword [ebp - 0x558]
lea edx, [ebp - 0xac]
mov eax, 0x8020
mov word [ebp - 0x7a], cx
mov word [ebp - 0x7c], ax
lea ecx, [ebp - 0x68]
mov word [ebp - 0x78], ax
mov eax, dword [ebp - 0x540]
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0xac], 0x806e8069
mov dword [ebp - 0xa8], 0x80618076
mov dword [ebp - 0xa4], 0x8069806c
mov dword [ebp - 0xa0], 0x80208064
mov dword [ebp - 0x9c], 0x8070806c
mov dword [ebp - 0x98], 0x80698056
mov dword [ebp - 0x94], 0x80778065
mov dword [ebp - 0x90], 0x8061804d
mov dword [ebp - 0x8c], 0x80418078
mov dword [ebp - 0x88], 0x80648064
mov dword [ebp - 0x84], 0x80658072
mov dword [ebp - 0x80], 0x80738073
mov word [ebp - 0x74], ax
mov dword [ebp - 0x72], 0x8000
call fcn.00419a70
or dword [ebp - 0x530], 0x80000000
mov eax, dword [ebp - 0x54c]
lea edx, [ebp - 0x68]
mov dword [ebp - 4], 0x18
cmp dword [ebp - 0x54], 8
mov ecx, dword [eax]
cmovae edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x28], ecx
mov ecx, edx
mov dword [ebp - 0x24], eax
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x46c960
sub ecx, esi
sub esp, 0x10
mov eax, esp
sar ecx, 1
lea esi, [ebp - 0x28]
push ecx
push edx
lea ecx, [ebp - 0x11c]
mov dword [eax], 0xe
mov dword [eax + 4], 0
mov dword [eax + 8], esi
call fcn.00426fd0
add esp, 0x18
lea eax, [ebp - 0x11c]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x50]
call fcn.00444e70
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
lea ecx, [ebp - 0x1a4]
cmovae eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
call fcn.00419750
lea ecx, [ebp - 0x230]
mov edi, eax
call fcn.00459940
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
mov esi, eax
call fcn.00419450
push esi
mov edx, eax
lea ecx, [ebp - 0x2e0]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x388]
mov edx, eax
push edi
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push dword [ebp - 0x20]
push 0
push esi
push 8
push eax
call fcn.0043ebb0
add esp, 0x14
lea ecx, [ebp - 0x50]
call fcn.00445ad0
lea ecx, [ebp - 0x11c]
call fcn.00445ad0
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.00445ad0
jmp 0x4705b0
call fcn.00441aa0
mov edx, 0x8072
mov dword [ebp - 0x554], 0x806d
mov dword [ebp - 0x534], 0x806f
mov dword [ebp - 0x55c], 0x8079
mov eax, dword [eax]
mov dword [ebp - 0x568], 0x8067
mov dword [ebp - 0x548], 0x803a
mov dword [ebp - 0x53c], 0x802d
cmp dword [eax], 0
je 0x46ccb1
mov eax, dword [edi + 0xc]
mov ecx, 0x8065
mov edi, dword [ebp - 0x554]
mov esi, dword [ebp - 0x544]
mov word [ebp - 0xaa], cx
mov word [ebp - 0xa4], dx
mov word [ebp - 0x86], cx
mov ecx, dword [ebp - 0x548]
mov dword [ebp - 0x20], eax
lea eax, [edx - 0x52]
mov edx, dword [ebp - 0x568]
mov word [ebp - 0xac], di
mov word [ebp - 0xa8], di
mov edi, dword [ebp - 0x534]
mov word [ebp - 0x88], dx
mov edx, dword [ebp - 0x540]
mov word [ebp - 0x84], cx
mov ecx, dword [ebp - 0x53c]
mov word [ebp - 0xa6], di
mov edi, dword [ebp - 0x55c]
mov word [ebp - 0x80], dx
mov word [ebp - 0x7a], cx
lea ecx, [ebp - 0x68]
mov word [ebp - 0x76], dx
lea edx, [ebp - 0xb8]
mov dword [ebp - 0xb8], 0x80618076
mov dword [ebp - 0xb4], 0x8069806c
mov dword [ebp - 0xb0], 0x80208064
mov word [ebp - 0xa2], di
mov dword [ebp - 0xa0], 0x80618020
mov dword [ebp - 0x9c], 0x80648064
mov dword [ebp - 0x98], 0x80658072
mov dword [ebp - 0x94], 0x80738073
mov dword [ebp - 0x90], 0x80728020
mov dword [ebp - 0x8c], 0x806e8061
mov word [ebp - 0x82], ax
mov word [ebp - 0x7e], si
mov word [ebp - 0x7c], ax
mov word [ebp - 0x78], ax
mov word [ebp - 0x74], si
mov dword [ebp - 0x72], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 0x1b
lea eax, [ebp - 0x68]
mov esi, dword [ebp - 0x530]
lea edx, [ebp - 0x530]
or esi, 0x40
lea ecx, [ebp - 0x11c]
cmp dword [ebp - 0x54], 8
mov dword [ebp - 0x538], esi
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x530], eax
mov eax, dword [ebp - 0x54c]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.004836e0
add esp, 8
mov dword [ebp - 4], 0x1c
lea ecx, [ebp - 0x50]
or esi, 0x80
push eax
mov dword [ebp - 0x538], esi
call fcn.00444e70
mov dword [ebp - 4], 0x1d
lea edi, [ebp - 0x50]
or esi, 0x100
mov byte [ebp - 0x20], 0
cmp dword [ebp - 0x3c], 8
mov ecx, 0x2d
push dword [ebp - 0x20]
cmovae edi, dword [ebp - 0x50]
mov dword [ebp - 0x530], esi
mov dword [ebp - 0x538], esi
mov dword [ebp - 0x38], 0x290028
mov dword [ebp - 0x34], 0x2d0020
mov dword [ebp - 0x30], 0x20
push ecx
lea ecx, [ebp - 0xe8]
call fcn.00459960
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
call fcn.00419450
lea ecx, [ebp - 0xe8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x2e0]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x38]
mov edx, eax
push ecx
lea ecx, [ebp - 0x388]
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push edi
push 0
push esi
push 0
push eax
call fcn.0043ebb0
mov edi, dword [ebp - 0x580]
add esp, 0x14
mov eax, dword [ebp - 0x530]
test eax, 0x100
je 0x46ccd7
and eax, 0xfffffeff
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x530], eax
call fcn.00445ad0
mov eax, dword [ebp - 0x530]
test al, al
jns 0x46ccf7
and eax, 0xffffff7f
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x530], eax
call fcn.00445ad0
mov eax, dword [ebp - 0x530]
mov dword [ebp - 4], 0xffffffff
test al, 0x40
je 0x46cd13
and eax, 0xffffffbf
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x530], eax
call fcn.00445ad0
mov esi, dword [edi + 0xc]
mov ecx, edi
push esi
call fcn.00483ff0
test al, al
je 0x46ce65
mov edi, dword [ebp - 0x534]
mov edx, 0x8072
mov ecx, dword [ebp - 0x550]
mov esi, edi
mov word [ebp - 0xbc], dx
mov word [ebp - 0xba], di
lea eax, [edx - 0x52]
mov word [ebp - 0xb0], di
mov word [ebp - 0x8e], ax
lea edx, [ebp - 0xc0]
mov eax, 0x8069
mov word [ebp - 0xaa], cx
mov word [ebp - 0x76], ax
lea ecx, [ebp - 0x68]
mov word [ebp - 0x9c], di
xor eax, eax
mov edi, dword [ebp - 0x568]
mov dword [ebp - 0xc0], 0x80728045
mov dword [ebp - 0xb8], 0x80218072
mov dword [ebp - 0xb4], 0x80448020
mov dword [ebp - 0xae], 0x80208073
mov dword [ebp - 0xa8], 0x80618065
mov dword [ebp - 0xa4], 0x80658064
mov dword [ebp - 0xa0], 0x80208072
mov dword [ebp - 0x9a], 0x80748075
mov dword [ebp - 0x96], 0x80698073
mov dword [ebp - 0x92], 0x80658064
mov word [ebp - 0x8c], si
mov dword [ebp - 0x8a], 0x80208066
mov dword [ebp - 0x86], 0x80618070
mov word [ebp - 0x82], di
mov dword [ebp - 0x80], 0x80208065
mov dword [ebp - 0x7c], 0x80658072
mov word [ebp - 0x78], di
mov word [ebp - 0x74], si
mov dword [ebp - 0x72], 0x8000806e
mov word [ebp - 0x6e], ax
call fcn.00419a70
mov dword [ebp - 4], 0x1e
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x1f
call fcn.00444e70
mov byte [ebp - 4], 0x20
jmp 0x46c9ae
mov eax, 0x5a4d
cmp word [esi], ax
je 0x46cf93
mov ecx, dword [ebp - 0x534]
mov eax, 0x8052
mov word [ebp - 0xa8], ax
mov edx, 0x8072
mov eax, dword [ebp - 0x548]
mov word [ebp - 0xa6], ax
mov eax, 0x8020
mov word [ebp - 0x80], cx
mov ecx, dword [ebp - 0x554]
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0x540]
mov word [ebp - 0x7e], dx
lea edx, [ebp - 0xb0]
mov word [ebp - 0x7c], cx
lea ecx, [ebp - 0x68]
mov word [ebp - 0x74], ax
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0xb0], 0x80528045
mov dword [ebp - 0xac], 0x804f8052
mov dword [ebp - 0xa4], 0x80498020
mov dword [ebp - 0xa0], 0x8076806e
mov dword [ebp - 0x9c], 0x806c8061
mov dword [ebp - 0x98], 0x80648069
mov dword [ebp - 0x94], 0x80708020
mov dword [ebp - 0x90], 0x80208065
mov dword [ebp - 0x8c], 0x80698066
mov dword [ebp - 0x88], 0x8065806c
mov dword [ebp - 0x84], 0x80668020
mov dword [ebp - 0x7a], 0x80748061
mov word [ebp - 0x72], ax
mov dword [ebp - 0x70], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 0x21
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x564]
push eax
call fcn.0041cd30
add esp, 4
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x22
call fcn.00444e70
mov byte [ebp - 4], 0x23
jmp 0x46c9ae
mov eax, dword [esi + 0x3c]
mov ecx, edi
add eax, esi
push eax
mov dword [ebp - 0x538], eax
call fcn.0046b4b0
test al, al
je 0x46d0ed
mov edi, dword [ebp - 0x534]
mov edx, 0x8072
mov ecx, dword [ebp - 0x550]
mov esi, edi
mov word [ebp - 0xbc], dx
mov word [ebp - 0xba], di
lea eax, [edx - 0x52]
mov word [ebp - 0xac], cx
mov word [ebp - 0x9e], ax
lea edx, [ebp - 0xc0]
mov word [ebp - 0x8e], ax
lea ecx, [ebp - 0x68]
mov eax, 0x8069
mov word [ebp - 0x9c], di
mov edi, dword [ebp - 0x568]
mov word [ebp - 0x76], ax
xor eax, eax
mov dword [ebp - 0xc0], 0x80728045
mov dword [ebp - 0xb8], 0x80218072
mov dword [ebp - 0xb4], 0x804e8020
mov dword [ebp - 0xb0], 0x80208054
mov dword [ebp - 0xaa], 0x80618065
mov dword [ebp - 0xa6], 0x80658064
mov dword [ebp - 0xa2], 0x80738072
mov dword [ebp - 0x9a], 0x80748075
mov dword [ebp - 0x96], 0x80698073
mov dword [ebp - 0x92], 0x80658064
mov word [ebp - 0x8c], si
mov dword [ebp - 0x8a], 0x80208066
mov dword [ebp - 0x86], 0x80618070
mov word [ebp - 0x82], di
mov dword [ebp - 0x80], 0x80208065
mov dword [ebp - 0x7c], 0x80658072
mov word [ebp - 0x78], di
mov word [ebp - 0x74], si
mov dword [ebp - 0x72], 0x8000806e
mov word [ebp - 0x6e], ax
call fcn.00419a70
mov dword [ebp - 4], 0x24
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x25
call fcn.00444e70
mov byte [ebp - 4], 0x26
jmp 0x46c9ae
mov eax, dword [ebp - 0x538]
mov ecx, edi
push eax
call fcn.00484850
test al, al
je 0x46d13e
lea eax, [ebp - 0x68]
push eax
call fcn.00470d50
mov dword [ebp - 4], 0x27
cmp dword [eax + 0x14], 8
jb 0x46d117
mov eax, dword [eax]
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x11c]
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x28
call fcn.00444e70
mov byte [ebp - 4], 0x29
jmp 0x46c9ae
mov eax, dword [ebp - 0x538]
cmp dword [eax], 0x4550
je 0x46d1f7
mov eax, 0x8020
mov dword [ebp - 0x94], 0x806e8049
mov word [ebp - 0x80], ax
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 0x550]
lea ecx, [ebp - 0x68]
mov word [ebp - 0x7e], ax
xor eax, eax
mov dword [ebp - 0x90], 0x80618076
mov dword [ebp - 0x8c], 0x8069806c
mov dword [ebp - 0x88], 0x80208064
mov dword [ebp - 0x84], 0x8054804e
mov dword [ebp - 0x7c], 0x80618065
mov dword [ebp - 0x78], 0x80658064
mov dword [ebp - 0x74], 0x80008072
mov word [ebp - 0x70], ax
call fcn.00419a70
mov dword [ebp - 4], 0x2a
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x2b
call fcn.00444e70
mov byte [ebp - 4], 0x2c
jmp 0x46c9ae
add eax, 4
mov ecx, edi
push eax
mov dword [ebp - 0x20], eax
call fcn.00484f70
test al, al
je 0x46d248
lea eax, [ebp - 0x68]
push eax
call fcn.00470d50
mov dword [ebp - 4], 0x2d
cmp dword [eax + 0x14], 8
jb 0x46d221
mov eax, dword [eax]
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x11c]
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x2e
call fcn.00444e70
mov byte [ebp - 4], 0x2f
jmp 0x46c9ae
mov eax, dword [ebp - 0x538]
cmp word [eax + 0x14], 0
jne 0x46d342
mov eax, dword [ebp - 0x56c]
lea ecx, [ebp - 0x68]
mov edx, 0x8069
mov word [ebp - 0x94], ax
mov word [ebp - 0x86], dx
xor eax, eax
mov edx, dword [ebp - 0x534]
mov word [ebp - 0x84], dx
lea edx, [ebp - 0xa8]
mov dword [ebp - 0xa8], 0x806e8049
mov dword [ebp - 0xa4], 0x80618076
mov dword [ebp - 0xa0], 0x8069806c
mov dword [ebp - 0x9c], 0x80208064
mov dword [ebp - 0x98], 0x80698053
mov dword [ebp - 0x92], 0x804f8065
mov dword [ebp - 0x8e], 0x804f8066
mov dword [ebp - 0x8a], 0x80748070
mov dword [ebp - 0x82], 0x8061806e
mov dword [ebp - 0x7e], 0x8048806c
mov dword [ebp - 0x7a], 0x80618065
mov dword [ebp - 0x76], 0x80658064
mov dword [ebp - 0x72], 0x80008072
mov word [ebp - 0x6e], ax
call fcn.00419a70
mov dword [ebp - 4], 0x30
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x31
call fcn.00444e70
mov byte [ebp - 4], 0x32
jmp 0x46c9ae
movzx ecx, word [eax + 4]
mov edx, 0x8664
cmp cx, dx
je 0x46d6a0
mov edx, 0xaa64
cmp cx, dx
je 0x46d6a0
mov edx, 0x14c
cmp cx, dx
je 0x46d457
mov edx, 0x1c4
cmp cx, dx
je 0x46d457
mov ecx, 0x8066
mov dword [ebp - 0x98], 0x806e8069
mov word [ebp - 0x80], cx
mov eax, 0x8020
mov ecx, dword [ebp - 0x534]
mov edx, 0x8072
mov word [ebp - 0x7e], cx
mov ecx, dword [ebp - 0x554]
mov word [ebp - 0x78], ax
mov eax, dword [ebp - 0x540]
mov word [ebp - 0x7c], dx
lea edx, [ebp - 0x98]
mov word [ebp - 0x7a], cx
lea ecx, [ebp - 0x68]
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0x94], 0x80618076
mov dword [ebp - 0x90], 0x8069806c
mov dword [ebp - 0x8c], 0x80208064
mov dword [ebp - 0x88], 0x806c8070
mov dword [ebp - 0x84], 0x80748061
mov word [ebp - 0x74], ax
mov dword [ebp - 0x72], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 0x3f
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x560]
push dword [ebp - 0x20]
cmovae eax, dword [ebp - 0x68]
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x560], eax
call fcn.004864d0
add esp, 4
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x40
call fcn.00444e70
mov byte [ebp - 4], 0x41
jmp 0x46c9ae
push eax
mov ecx, edi
call fcn.00485db0
test al, al
je 0x46d5a6
mov edi, dword [ebp - 0x534]
mov edx, 0x8072
mov ecx, dword [ebp - 0x550]
mov esi, edi
mov word [ebp - 0xbc], dx
mov word [ebp - 0xba], di
lea eax, [edx - 0x52]
mov word [ebp - 0xac], cx
mov word [ebp - 0x9e], ax
lea edx, [ebp - 0xc0]
mov word [ebp - 0x8e], ax
lea ecx, [ebp - 0x68]
mov eax, 0x8069
mov word [ebp - 0x9c], di
mov edi, dword [ebp - 0x568]
mov word [ebp - 0x76], ax
xor eax, eax
mov dword [ebp - 0xc0], 0x80728045
mov dword [ebp - 0xb8], 0x80218072
mov dword [ebp - 0xb4], 0x804e8020
mov dword [ebp - 0xb0], 0x80208054
mov dword [ebp - 0xaa], 0x80618065
mov dword [ebp - 0xa6], 0x80658064
mov dword [ebp - 0xa2], 0x80738072
mov dword [ebp - 0x9a], 0x80748075
mov dword [ebp - 0x96], 0x80698073
mov dword [ebp - 0x92], 0x80658064
mov word [ebp - 0x8c], si
mov dword [ebp - 0x8a], 0x80208066
mov dword [ebp - 0x86], 0x80618070
mov word [ebp - 0x82], di
mov dword [ebp - 0x80], 0x80208065
mov dword [ebp - 0x7c], 0x80658072
mov word [ebp - 0x78], di
mov word [ebp - 0x74], si
mov dword [ebp - 0x72], 0x8000806e
mov word [ebp - 0x6e], ax
call fcn.00419a70
mov dword [ebp - 4], 0x39
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x3a
call fcn.00444e70
mov byte [ebp - 4], 0x3b
jmp 0x46c9ae
mov eax, dword [ebp - 0x538]
cmp dword [eax + 0x74], 2
ja 0x46d696
mov eax, dword [ebp - 0x554]
lea edx, [ebp - 0xa8]
mov word [ebp - 0x94], ax
lea ecx, [ebp - 0x68]
mov eax, 0x8069
mov dword [ebp - 0xa8], 0x806e8049
mov word [ebp - 0x7a], ax
mov eax, dword [ebp - 0x56c]
mov dword [ebp - 0xa4], 0x80618076
mov dword [ebp - 0xa0], 0x8069806c
mov dword [ebp - 0x9c], 0x80208064
mov dword [ebp - 0x98], 0x8075804e
mov dword [ebp - 0x92], 0x80658062
mov dword [ebp - 0x8e], 0x804f8072
mov dword [ebp - 0x8a], 0x80528066
mov dword [ebp - 0x86], 0x80618076
mov dword [ebp - 0x82], 0x806e8041
mov dword [ebp - 0x7e], 0x80538064
mov word [ebp - 0x78], ax
mov dword [ebp - 0x76], 0x80738065
mov dword [ebp - 0x72], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 0x3c
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x3d
call fcn.00444e70
mov byte [ebp - 4], 0x3e
jmp 0x46c9ae
mov ecx, 0x88
jmp 0x46d8e7
push eax
mov ecx, edi
call fcn.00485690
test al, al
je 0x46d7ef
mov edi, dword [ebp - 0x534]
mov edx, 0x8072
mov ecx, dword [ebp - 0x550]
mov esi, edi
mov word [ebp - 0xbc], dx
mov word [ebp - 0xba], di
lea eax, [edx - 0x52]
mov word [ebp - 0xac], cx
mov word [ebp - 0x9e], ax
lea edx, [ebp - 0xc0]
mov word [ebp - 0x8e], ax
lea ecx, [ebp - 0x68]
mov eax, 0x8069
mov word [ebp - 0x9c], di
mov edi, dword [ebp - 0x568]
mov word [ebp - 0x76], ax
xor eax, eax
mov dword [ebp - 0xc0], 0x80728045
mov dword [ebp - 0xb8], 0x80218072
mov dword [ebp - 0xb4], 0x804e8020
mov dword [ebp - 0xb0], 0x80208054
mov dword [ebp - 0xaa], 0x80618065
mov dword [ebp - 0xa6], 0x80658064
mov dword [ebp - 0xa2], 0x80738072
mov dword [ebp - 0x9a], 0x80748075
mov dword [ebp - 0x96], 0x80698073
mov dword [ebp - 0x92], 0x80658064
mov word [ebp - 0x8c], si
mov dword [ebp - 0x8a], 0x80208066
mov dword [ebp - 0x86], 0x80618070
mov word [ebp - 0x82], di
mov dword [ebp - 0x80], 0x80208065
mov dword [ebp - 0x7c], 0x80658072
mov word [ebp - 0x78], di
mov word [ebp - 0x74], si
mov dword [ebp - 0x72], 0x8000806e
mov word [ebp - 0x6e], ax
call fcn.00419a70
mov dword [ebp - 4], 0x33
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x34
call fcn.00444e70
mov byte [ebp - 4], 0x35
jmp 0x46c9ae
mov eax, dword [ebp - 0x538]
cmp dword [eax + 0x84], 2
ja 0x46d8e2
mov eax, dword [ebp - 0x554]
lea edx, [ebp - 0xa8]
mov word [ebp - 0x94], ax
lea ecx, [ebp - 0x68]
mov eax, 0x8069
mov dword [ebp - 0xa8], 0x806e8049
mov word [ebp - 0x7a], ax
mov eax, dword [ebp - 0x56c]
mov dword [ebp - 0xa4], 0x80618076
mov dword [ebp - 0xa0], 0x8069806c
mov dword [ebp - 0x9c], 0x80208064
mov dword [ebp - 0x98], 0x8075804e
mov dword [ebp - 0x92], 0x80658062
mov dword [ebp - 0x8e], 0x804f8072
mov dword [ebp - 0x8a], 0x80528066
mov dword [ebp - 0x86], 0x80618076
mov dword [ebp - 0x82], 0x806e8041
mov dword [ebp - 0x7e], 0x80538064
mov word [ebp - 0x78], ax
mov dword [ebp - 0x76], 0x80738065
mov dword [ebp - 0x72], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 0x36
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x37
call fcn.00444e70
mov byte [ebp - 4], 0x38
jmp 0x46c9ae
mov ecx, 0x98
add eax, ecx
mov ecx, edi
push eax
mov dword [ebp - 0x564], eax
call fcn.00486560
test al, al
je 0x46da45
mov ecx, dword [ebp - 0x564]
mov eax, 0x8020
mov esi, dword [ebp - 0x534]
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x55c]
lea edx, [eax + 0x52]
mov word [ebp - 0x82], cx
mov ecx, dword [ebp - 0x558]
mov word [ebp - 0x80], ax
mov word [ebp - 0x7c], ax
mov eax, dword [ebp - 0x540]
mov word [ebp - 0x84], dx
lea edx, [ebp - 0xc0]
mov word [ebp - 0x7e], cx
lea ecx, [ebp - 0x68]
mov word [ebp - 0x7a], ax
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0xc0], 0x80528045
mov dword [ebp - 0xbc], 0x804f8052
mov dword [ebp - 0xb8], 0x80218052
mov dword [ebp - 0xb4], 0x80698020
mov dword [ebp - 0xb0], 0x8076806e
mov dword [ebp - 0xac], 0x806c8061
mov dword [ebp - 0xa8], 0x80648069
mov dword [ebp - 0xa4], 0x80728020
mov dword [ebp - 0xa0], 0x80738065
mov word [ebp - 0x9c], si
mov dword [ebp - 0x9a], 0x80728075
mov dword [ebp - 0x96], 0x80658063
mov dword [ebp - 0x92], 0x80698044
mov dword [ebp - 0x8e], 0x80658072
mov dword [ebp - 0x8a], 0x80748063
mov word [ebp - 0x86], si
mov word [ebp - 0x78], ax
mov dword [ebp - 0x76], 0x8000
call fcn.00419a70
mov dword [ebp - 4], 0x42
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea edx, [ebp - 0x560]
lea ecx, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x560], eax
lea eax, [ebp - 0x20]
push eax
call fcn.00486c80
add esp, 4
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x43
call fcn.00444e70
mov byte [ebp - 4], 0x44
jmp 0x46c9ae
mov eax, dword [ebp - 0x564]
cmp dword [eax + 4], 0
jne 0x46dbf9
mov esi, dword [ebp - 0x534]
mov ecx, 0x8073
mov word [ebp - 0x9c], cx
mov edx, 0x8072
mov ecx, dword [ebp - 0x55c]
xor eax, eax
mov word [ebp - 0x80], cx
mov ecx, dword [ebp - 0x53c]
mov word [ebp - 0x7e], cx
lea edi, [edx - 9]
mov ecx, dword [ebp - 0x56c]
mov word [ebp - 0x82], dx
lea edx, [ebp - 0xb0]
mov word [ebp - 0x76], cx
lea ecx, [ebp - 0x50]
mov dword [ebp - 0xb0], 0x806e8049
mov dword [ebp - 0xac], 0x80618076
mov dword [ebp - 0xa8], 0x8069806c
mov dword [ebp - 0xa4], 0x80208064
mov dword [ebp - 0xa0], 0x80658072
mov word [ebp - 0x9a], si
mov dword [ebp - 0x98], 0x80728075
mov dword [ebp - 0x94], 0x80658063
mov dword [ebp - 0x90], 0x80698044
mov dword [ebp - 0x8c], 0x80658072
mov dword [ebp - 0x88], 0x80748063
mov word [ebp - 0x84], si
mov dword [ebp - 0x7c], 0x8053803e
mov word [ebp - 0x78], di
mov dword [ebp - 0x74], 0x80008065
mov word [ebp - 0x70], ax
call fcn.00419a70
mov dword [ebp - 4], 0x45
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 8
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x68]
cmovae eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x46
call fcn.00444e70
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x47
call fcn.00445c70
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x20], eax
call fcn.00419750
lea ecx, [ebp - 0x230]
mov edi, eax
call fcn.00459940
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
mov esi, eax
call fcn.00419450
push esi
mov edx, eax
lea ecx, [ebp - 0x2e0]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x388]
mov edx, eax
push edi
call fcn.00483a00
add esp, 4
mov esi, eax
call fcn.00441aa0
push dword [ebp - 0x20]
push 0
push esi
push 8
push eax
call fcn.0043ebb0
add esp, 0x14
lea ecx, [ebp - 0x11c]
call fcn.00445ad0
lea ecx, [ebp - 0x68]
call fcn.00445ad0
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.00445ad0
jmp 0x4705b0
cmp dword [eax], 0
jne 0x46dd4f
mov eax, dword [ebp - 0x55c]
mov ecx, 0x8073
mov word [ebp - 0x94], cx
mov edx, 0x8072
mov ecx, dword [ebp - 0x534]
mov word [ebp - 0x78], ax
xor eax, eax
mov word [ebp - 0x92], cx
mov word [ebp - 0x7c], cx
lea ecx, [ebp - 0x50]
mov word [ebp - 0x7a], dx
lea edx, [ebp - 0xa8]
mov dword [ebp - 0xa8], 0x806e8049
mov dword [ebp - 0xa4], 0x80618076
mov dword [ebp - 0xa0], 0x8069806c
mov dword [ebp - 0x9c], 0x80208064
mov dword [ebp - 0x98], 0x80658072
mov dword [ebp - 0x90], 0x80728075
mov dword [ebp - 0x8c], 0x80658063
mov dword [ebp - 0x88], 0x80698044
mov dword [ebp - 0x84], 0x80658072
mov dword [ebp - 0x80], 0x80748063
mov dword [ebp - 0x76], 0x80768052
mov dword [ebp - 0x72], 0x80008061
mov word [ebp - 0x6e], ax
call fcn.00419a70
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0x48
call fcn.00445c70
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x68]
call fcn.0041ccb0
push eax
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x49
call fcn.00444e70
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x4a
call fcn.00445c70
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x20], eax
call fcn.00419750
lea ecx, [ebp - 0x230]
mov edi, eax
call fcn.00459940
mov edx, str._BDREINIT__::
lea ecx, [ebp - 0x140]
mov esi, eax
call fcn.00419450
push esi
mov edx, eax
lea ecx, [ebp - 0x2e0]
call fcn.00483780
add esp, 4
lea ecx, [ebp - 0x388]
mov edx, eax
push edi
invalid