Function at 0x801ca0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x95c
mov eax, dword [esp + 0x9a4]
mov dword [esp + 8], ecx
test eax, eax
je 0x801cbb
mov dword [eax], 0
cmp dword [esp + 0x97c], 0
push ebx
mov ebx, dword [esp + 0x964]
push ebp
mov ebp, dword [0x100b516c]
push esi
push edi
je 0x802010
push 0
push 0
push 3
push 0
push 1
push 0x80000000
push dword [esp + 0x994]
call dword [0x100b50d8]
mov esi, dword [0x100b50b0]
mov edi, eax
push 0
lea eax, [esp + 0xa4]
push eax
push 0x40
lea eax, [esp + 0x398]
push eax
push edi
call esi
push 0
push 0
push dword [esp + 0x3d0]
push edi
call dword [0x100b5194]
push 0
lea eax, [esp + 0xa4]
push eax
push 0xf8
lea eax, [esp + 0x4d0]
push eax
push edi
call esi
push edi
call dword [0x100b525c]
mov ebp, dword [esp + 0x514]
xor edx, edx
mov ecx, dword [0x100d7084]
mov eax, ebp
div ecx
mov edi, dword [esp + 0x4f8]
mov dword [esp + 0x24], edi
test edx, edx
je 0x801d70
lea ebp, [eax + 1]
imul ebp, ecx
lea eax, [esp + 0x17c]
push eax
push 0x18
lea eax, [esp + 0x1ec]
push eax
push 0
push ebx
call dword [0x100d6f6c]
mov esi, dword [0x100b517c]
lea eax, [esp + 0x44]
push eax
push 0x1d8
lea eax, [esp + 0x5c4]
push eax
push dword [esp + 0x1f4]
push ebx
call esi
lea eax, [esp + 0x44]
push eax
push 0x40
lea eax, [esp + 0x25c]
push eax
push dword [esp + 0x5d0]
push ebx
call esi
lea eax, [esp + 0x44]
push eax
push 0xf8
lea eax, [esp + 0x29c]
push eax
mov eax, dword [esp + 0x29c]
add eax, dword [esp + 0x5d0]
push eax
push ebx
call esi
mov ecx, dword [esp + 0x18]
mov eax, 0x100
or word [esp + 0x2f2], ax
lea eax, [esp + 0x294]
push eax
push dword [esp + 0x5c8]
mov eax, dword [esp + 0x984]
push eax
push ebx
mov dword [esp + 0x38c], 0
mov dword [esp + 0x390], 0
call fcn.00817fb0
movzx eax, word [esp + 0x50c]
mov esi, dword [0x100b5170]
mov word [esp + 0x2dc], ax
movzx eax, word [esp + 0x50e]
mov word [esp + 0x2de], ax
lea eax, [esp + 0x64]
push eax
mov eax, dword [esp + 0x294]
add eax, dword [esp + 0x5c8]
push 4
push 0xf8
push eax
push ebx
call esi
lea eax, [esp + 0x88]
push eax
push 0xf8
lea eax, [esp + 0x29c]
push eax
mov eax, dword [esp + 0x29c]
add eax, dword [esp + 0x5d0]
push eax
push ebx
call dword [0x100b5180]
lea eax, [esp + 0x64]
push eax
push dword [esp + 0x68]
mov eax, dword [esp + 0x298]
add eax, dword [esp + 0x5cc]
push 0xf8
push eax
push ebx
call esi
mov esi, dword [esp + 0x5c4]
mov ecx, dword [esp + 0x2e4]
xor edx, edx
mov eax, ecx
mov dword [esp + 0x10], esi
div dword [0x100d7084]
mov dword [esp + 0x20], ecx
test edx, edx
je 0x801eef
lea ecx, [eax + 1]
imul ecx, dword [0x100d7084]
mov dword [esp + 0x20], ecx
lea eax, [ecx + esi]
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], eax
lea eax, [edi + ebp]
mov dword [esp + 0x38], eax
mov dword [esp + 0x80], eax
lea eax, [esp + 0x74]
push 4
push eax
mov dword [esp + 0x84], edi
call fcn.007faaa0
mov eax, dword [esp + 0x7c]
add esp, 8
mov edx, dword [esp + 0x78]
mov ecx, 1
mov dword [esp + 0x90], eax
cmp eax, edx
je 0x801f42
mov dword [esp + 0x94], edx
mov ecx, 2
mov eax, dword [esp + 0x7c]
cmp dword [esp + ecx*4 + 0x8c], eax
je 0x801f57
mov dword [esp + ecx*4 + 0x90], eax
inc ecx
mov eax, dword [esp + 0x80]
test ecx, ecx
jle 0x801f6b
cmp dword [esp + ecx*4 + 0x8c], eax
je 0x801f73
mov dword [esp + ecx*4 + 0x90], eax
inc ecx
lea eax, [ecx - 1]
xor ebp, ebp
mov dword [esp + 0x14], eax
test eax, eax
jle 0x801fe8
mov esi, dword [esp + ebp*4 + 0x90]
cmp esi, dword [esp + 0x10]
jb 0x801fa0
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x970]
cmp esi, ecx
jb 0x801fe3
cmp esi, edi
jb 0x801fe3
cmp esi, dword [esp + 0x38]
jae 0x801fe3
mov edi, dword [esp + ebp*4 + 0x94]
push 1
push 0x2000
sub edi, esi
push edi
push esi
push ebx
call dword [0x100b516c]
test eax, eax
je 0x801ff0
push 0x40
push 0x1000
push edi
push esi
push ebx
call dword [0x100b516c]
test eax, eax
je 0x801ff0
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
inc ebp
cmp ebp, eax
jl 0x801f80
mov ebp, dword [0x100b516c]
jmp 0x802017
mov eax, dword [esp + 0x9b4]
test eax, eax
je 0x802001
mov dword [eax], 0xffffffff
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x95c
ret 0x48
mov edi, dword [esp + 0x88]
push 0
push 0
push 0
push 4
push dword [0x100d7258]
call dword [0x100b512c]
push 0
push 1
push 0
push 0
mov esi, eax
push 0
push esi
push ebx
call fcn.00825670
add esp, 0x1c
mov dword [esp + 0x14], eax
push esi
call dword [0x100b5130]
mov esi, dword [esp + 0x14]
test esi, esi
je 0x802001
push 0x100c7af0
push esi
push ebx
call fcn.008243c0
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
je 0x802001
lea eax, [esp + 0xb0]
push 0xc0
push eax
call fcn.00820440
mov eax, dword [esp + 0x980]
add esp, 8
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x990]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x994]
push 2
push 1
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x9a0]
push 0
mov dword [esp + 0xec], eax
lea eax, [esp + 0xc4]
push eax
push ebx
push dword [0x100d7258]
mov dword [esp + 0xec], edi
mov edi, dword [0x100b5264]
mov dword [esp + 0xd4], esi
call edi
push eax
call dword [0x100b50b4]
test eax, eax
je 0x802001
mov esi, dword [esp + 0x9b0]
mov eax, dword [esp + 0x9ac]
mov dword [esp + 0xfc], eax
test esi, esi
je 0x80251f
mov eax, dword [esi]
mov dword [esp + 0x100], eax
cmp eax, 2
jne 0x8022ca
push eax
push 0
push 0
lea eax, [esp + 0x110]
push eax
push ebx
push dword [esi + 4]
call edi
push eax
mov eax, dword [0x100b50b4]
call eax
mov edi, dword [0x100b50a8]
test eax, eax
jne 0x8021ac
call edi
mov ecx, dword [0x100d71e8]
mov dword [esp + 0x14], eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x8021ac
push 0x100be8c0
push dword [esp + 0x18]
lea ecx, [esp + 0x1d4]
push 0x100ca758
push 0x100ca724
push 0x100be500
push 2
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x1cc]
call fcn.007781e0
mov eax, dword [esi + 0xc]
push 4
push 0x101000
lea eax, [eax*2 + 2]
push eax
push 0
push ebx
call ebp
mov ecx, eax
mov dword [esp + 0x108], ecx
test ecx, ecx
jne 0x80223d
call edi
mov ecx, dword [0x100d71e8]
mov dword [esp + 0x14], eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x802236
push 0x100be8c0
push dword [esp + 0x18]
lea ecx, [esp + 0x1b0]
push 0x100ca7b8
push 0x100ca724
push 0x100be500
push 2
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x1a8]
call fcn.007781e0
mov ecx, dword [esp + 0x108]
mov eax, dword [esi + 0xc]
lea edx, [esp + 0x1c]
push edx
lea eax, [eax*2 + 2]
push eax
push dword [esi + 8]
push ecx
push ebx
call dword [0x100b5180]
test eax, eax
jne 0x80251f
call edi
mov ecx, dword [0x100d71e8]
mov esi, eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x80251f
push 0x100be8c0
push esi
push 0x100ca810
push 0x100ca724
push 0x100be500
push 2
lea ecx, [esp + 0x1d8]
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x1c0]
call fcn.007781e0
jmp 0x80251f
cmp eax, 3
jne 0x80251f
mov eax, dword [esi + 0x20]
push 4
mov dword [esp + 0x11c], eax
mov eax, dword [esi + 0x1c]
push 0x101000
mov dword [esp + 0x11c], eax
mov eax, dword [esi + 0x18]
push eax
push 0
push ebx
mov dword [esp + 0x124], eax
call ebp
mov dword [esp + 0x10c], eax
test eax, eax
jne 0x80237a
call dword [0x100b50a8]
mov ecx, dword [0x100d71e8]
mov dword [esp + 0x14], eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x802373
push 0x100be8c0
push dword [esp + 0x18]
lea ecx, [esp + 0x1e0]
push 0x100ca870
push 0x100ca724
push 0x100be500
push 2
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x1d8]
call fcn.007781e0
mov eax, dword [esp + 0x10c]
lea ecx, [esp + 0x1c]
push ecx
push dword [esi + 0x18]
push dword [esi + 0x14]
push eax
push ebx
call dword [0x100b5180]
test eax, eax
jne 0x8023fb
call dword [0x100b50a8]
mov ecx, dword [0x100d71e8]
mov dword [esp + 0x14], eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x8023fb
push 0x100be8c0
push dword [esp + 0x18]
lea ecx, [esp + 0x198]
push 0x100ca8c8
push 0x100ca724
push 0x100be500
push 2
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x190]
call fcn.007781e0
push 2
push 0
push 0
lea eax, [esp + 0x128]
push eax
push ebx
call edi
push eax
call edi
push eax
mov eax, dword [0x100b50b4]
call eax
test eax, eax
jne 0x802485
call dword [0x100b50a8]
mov ecx, dword [0x100d71e8]
mov dword [esp + 0x14], eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x802485
push 0x100be8c0
push dword [esp + 0x18]
lea ecx, [esp + 0x1bc]
push 0x100ca928
push 0x100ca724
push 0x100be500
push 2
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x1b4]
call fcn.007781e0
mov eax, dword [esi + 0x24]
test eax, eax
je 0x802514
push 2
push 0
push 0
lea ecx, [esp + 0x12c]
push ecx
push ebx
push eax
call edi
push eax
call dword [0x100b50b4]
test eax, eax
jne 0x80251f
call dword [0x100b50a8]
mov ecx, dword [0x100d71e8]
mov esi, eax
mov edx, dword [ecx]
call dword [edx + 0xf8]
test eax, eax
je 0x80251f
push 0x100be8c0
push esi
push 0x100ca928
push 0x100ca724
push 0x100be500
push 2
lea ecx, [esp + 0x1b4]
call fcn.00775df0
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.00778410
mov ecx, eax
call fcn.007783a0
mov ecx, eax
call fcn.00778410
lea ecx, [esp + 0x19c]
call fcn.007781e0
jmp 0x80251f
mov dword [esp + 0x120], 0
mov ecx, dword [0x100d71e8]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, dword [0x100b5250]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x97c]
mov dword [esp + 0xb4], edx
test eax, eax
je 0x80258c
push 4
push 0x101000
push eax
call esi
lea eax, [eax*2 + 2]
push eax
push 0
push ebx
call ebp
mov edi, eax
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x980]
push eax
call esi
lea eax, [eax*2 + 2]
push eax
push dword [esp + 0x984]
push edi
push ebx
call dword [0x100b5180]
jmp 0x80258e
xor edi, edi
mov dword [esp + 0xc4], edi
mov edi, dword [esp + 0x980]
test edi, edi
je 0x8025dd
push 4
push 0x101000
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push 0
push ebx
call ebp
mov dword [esp + 0x10], eax
lea eax, [esp + 0x1c]
push eax
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push edi
push dword [esp + 0x1c]
push ebx
call dword [0x100b5180]
mov eax, dword [esp + 0x10]
jmp 0x8025df
xor eax, eax
mov edi, dword [esp + 0x984]
mov dword [esp + 0xc8], eax
test edi, edi
je 0x80262e
push 4
push 0x101000
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push 0
push ebx
call ebp
mov dword [esp + 0x10], eax
lea eax, [esp + 0x1c]
push eax
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push edi
push dword [esp + 0x1c]
push ebx
call dword [0x100b5180]
mov eax, dword [esp + 0x10]
jmp 0x802630
xor eax, eax
mov edi, dword [esp + 0x988]
mov dword [esp + 0xcc], eax
test edi, edi
je 0x80267f
push 4
push 0x101000
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push 0
push ebx
call ebp
mov dword [esp + 0x10], eax
lea eax, [esp + 0x1c]
push eax
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push edi
push dword [esp + 0x1c]
push ebx
call dword [0x100b5180]
mov eax, dword [esp + 0x10]
jmp 0x802681
xor eax, eax
push 0x200
push 0
mov dword [esp + 0xd8], eax
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0xff
call fcn.008203a0
xor ecx, ecx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
add esp, 8
mov word [eax], cx
mov eax, dword [0x100d7038]
test eax, eax
je 0x8026d7
lea ecx, [esp + 0x68]
push ecx
push eax
call fcn.00823e70
add esp, 8
mov edi, dword [esp + 0x68]
xor eax, eax
cmp dword [esp + 0x6c], eax
cmove edi, eax
test edi, edi
je 0x80272d
push 4
push 0x101000
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push 0
push ebx
call ebp
mov dword [esp + 0x10], eax
lea eax, [esp + 0x1c]
push eax
push edi
call esi
lea eax, [eax*2 + 2]
push eax
push edi
push dword [esp + 0x1c]
push ebx
call dword [0x100b5180]
test eax, eax
je 0x802daf
mov eax, dword [esp + 0x10]
jmp 0x80272f
xor eax, eax
mov esi, dword [0x100b5264]
push 2
push 1
mov dword [esp + 0xf0], eax
lea eax, [esp + 0x94]
push 0
push eax
push ebx
call esi
push eax
call esi
mov edi, dword [0x100b50b4]
push eax
call edi
test eax, eax
je 0x802daf
mov eax, dword [esp + 0x8c]
push 0
push 0
push 0
push 0
mov dword [esp + 0x100], eax
mov dword [esp + 0x60], 0xffffffff
call dword [0x100b524c]
push 2
push 1
push 0
lea ecx, [esp + 0x90]
mov dword [esp + 0x20], eax
push ecx
push ebx
push eax
call esi
push eax
call edi
test eax, eax
je 0x802daf
mov eax, dword [esp + 0x84]
mov dword [esp + 0xec], eax
lea eax, [esp + 0x38]
push eax
push 0x18
lea eax, [esp + 0x204]
push eax
push 0
push ebx
call dword [0x100d6f6c]
mov esi, dword [0x100b517c]
lea eax, [esp + 0x10]
push eax
push 0x1d8
lea eax, [esp + 0x79c]
push eax
push dword [esp + 0x20c]
push ebx
call esi
lea eax, [esp + 0x10]
push eax
push 0x40
lea eax, [esp + 0x21c]
push eax
push dword [esp + 0x7a8]
push ebx
call esi
lea eax, [esp + 0x10]
push eax
push 0xf8
lea eax, [esp + 0x3d4]
push eax
mov eax, dword [esp + 0x25c]
add eax, dword [esp + 0x7a8]
push eax
push ebx
call esi
mov eax, dword [esp + 0x4b4]
mov esi, dword [0x100b5170]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0x4b8]
mov dword [esp + 0xf8], eax
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x254]
add eax, dword [esp + 0x7a0]
push 4
push 0xf8
push eax
push ebx
mov dword [esp + 0x4c8], 0
mov dword [esp + 0x4cc], 0
call esi
lea eax, [esp + 0x178]
push eax
push 0xf8
lea eax, [esp + 0x3d4]
push eax
mov eax, dword [esp + 0x25c]
add eax, dword [esp + 0x7a8]
push eax
push ebx
call dword [0x100b5180]
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x24]
mov eax, dword [esp + 0x258]
add eax, dword [esp + 0x7a4]
push 0xf8
push eax
push ebx
call esi
mov esi, dword [esp + 0x18]
cmp dword [esi + 0x4c], 0
je 0x80297e
push 1
push ebx
mov dword [esp + 0x12c], 1
call fcn.0080aac0
mov dword [esp + 0x130], eax
xorps xmm0, xmm0
lea eax, [esp + 0x188]
mov dword [esp + 0x134], edx
push eax
push 1
push ebx
movq qword [esp + 0x194], xmm0
call fcn.00817b10
push 0xb
push ebx
call fcn.0080aac0
mov dword [esp + 0x14c], eax
xorps xmm0, xmm0
lea eax, [esp + 0x18c]
mov dword [esp + 0x150], edx
push eax
push 0xb
push ebx
movq qword [esp + 0x198], xmm0
call fcn.00817b10
push 0xc
push ebx
call fcn.0080aac0
mov dword [esp + 0x168], eax
xorps xmm0, xmm0
lea eax, [esp + 0x1b8]
mov dword [esp + 0x16c], edx
push eax
push 0xc
push ebx
movq qword [esp + 0x1c4], xmm0
call fcn.00817b10
add esp, 0x3c
lea edi, [esi + 0xc]
mov dword [esp + 0x5c], edi
call dword [0x100b5278]
mov esi, eax
lea ecx, [edi + 8]
cmp esi, dword [ecx]
je 0x8029cd
cmp dword [ecx], 0
jne 0x8029b9
push 0
push esi
push ecx
call dword [0x100b5268]
test eax, eax
sete al
test al, al
je 0x8029b9
mov esi, dword [esp + 0x5c]
mov dword [esi + 0x10], 0
jmp 0x8029d1
push 0xffffffffffffffff
push esi
mov esi, dword [esp + 0x64]
mov ecx, esi
call fcn.00784520
test al, al
jne 0x8029d1
jmp 0x8029d6
mov esi, dword [esp + 0x5c]
inc dword [esi + 0x10]
mov al, 1
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x5c]
mov byte [esp + 0x60], al
mov esi, dword [esi + 0x40]
call fcn.007a5a20
mov dword [esp + 0x140], esi
test esi, esi
je 0x802c7d
mov esi, dword [esp + 0x18]
mov ecx, esi
push 1
call fcn.0080bf30
push 3
mov ecx, esi
mov dword [esp + 0x148], eax
call fcn.0080bf30
push 4
mov ecx, esi
mov dword [esp + 0x14c], eax
call fcn.0080bf30
push 5
mov ecx, esi
mov dword [esp + 0x150], eax
call fcn.0080bf30
push 6
mov ecx, esi
mov dword [esp + 0x154], eax
call fcn.0080bf30
mov dword [esp + 0x154], eax
mov dword [esp + 0x28], edi
call dword [0x100b5278]
mov esi, eax
lea ecx, [edi + 8]
cmp esi, dword [ecx]
je 0x802a99
cmp dword [ecx], 0
jne 0x802a85
push 0
push esi
push ecx
call dword [0x100b5268]
test eax, eax
sete al
test al, al
je 0x802a85
mov esi, dword [esp + 0x28]
mov dword [esi + 0x10], 0
jmp 0x802a9d
push 0xffffffffffffffff
push esi
mov esi, dword [esp + 0x30]
mov ecx, esi
call fcn.00784520
test al, al
jne 0x802a9d
jmp 0x802aa2
mov esi, dword [esp + 0x28]
inc dword [esi + 0x10]
mov al, 1
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c], al
mov esi, dword [esi + 0x3c]
call fcn.007a5a20
mov dword [esp + 0x158], esi
mov dword [esp + 0x30], edi
call dword [0x100b5278]
mov esi, eax
lea ecx, [edi + 8]
cmp esi, dword [ecx]
je 0x802b09
cmp dword [ecx], 0
jne 0x802af5
push 0
push esi
push ecx
call dword [0x100b5268]
test eax, eax
sete al
test al, al
je 0x802af5
mov esi, dword [esp + 0x30]
mov dword [esi + 0x10], 0
jmp 0x802b0d
push 0xffffffffffffffff
push esi
mov esi, dword [esp + 0x38]
mov ecx, esi
call fcn.00784520
test al, al
jne 0x802b0d
jmp 0x802b12
mov esi, dword [esp + 0x30]
inc dword [esi + 0x10]
mov al, 1
mov byte [esp + 0x34], al
lea ecx, [esp + 0x30]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x40]
call fcn.007a5a20
mov dword [esp + 0x15c], esi
mov dword [esp + 0x3c], edi
call dword [0x100b5278]
mov esi, eax
lea ecx, [edi + 8]
cmp esi, dword [ecx]
je 0x802b79
cmp dword [ecx], 0
jne 0x802b65
push 0
push esi
push ecx
call dword [0x100b5268]
test eax, eax
sete al
test al, al
je 0x802b65
mov esi, dword [esp + 0x3c]
mov dword [esi + 0x10], 0
jmp 0x802b7d
push 0xffffffffffffffff
push esi
mov esi, dword [esp + 0x44]
mov ecx, esi
call fcn.00784520
test al, al
jne 0x802b7d
jmp 0x802b82
mov esi, dword [esp + 0x3c]
inc dword [esi + 0x10]
mov al, 1
mov byte [esp + 0x40], al
lea ecx, [esp + 0x3c]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x44]
call fcn.007a5a20
mov dword [esp + 0x160], esi
mov dword [esp + 0x48], edi
call dword [0x100b5278]
mov esi, eax
lea ecx, [edi + 8]
cmp esi, dword [ecx]
je 0x802be9
cmp dword [ecx], 0
jne 0x802bd5
push 0
push esi
push ecx
call dword [0x100b5268]
test eax, eax
sete al
test al, al
je 0x802bd5
mov esi, dword [esp + 0x48]
mov dword [esi + 0x10], 0
jmp 0x802bed
push 0xffffffffffffffff
push esi
mov esi, dword [esp + 0x50]
mov ecx, esi
call fcn.00784520
test al, al
jne 0x802bed
jmp 0x802bf2
mov esi, dword [esp + 0x48]
inc dword [esi + 0x10]
mov al, 1
mov byte [esp + 0x4c], al
lea ecx, [esp + 0x48]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x48]
call fcn.007a5a20
mov dword [esp + 0x164], esi
mov dword [esp + 0x54], edi
call dword [0x100b5278]
add edi, 8
mov esi, eax
cmp esi, dword [edi]
je 0x802c59
cmp dword [edi], 0
jne 0x802c45
push 0
push esi
push edi
call dword [0x100b5268]
test eax, eax
sete al
test al, al
je 0x802c45
mov esi, dword [esp + 0x54]
mov dword [esi + 0x10], 0
jmp 0x802c5d
push 0xffffffffffffffff
push esi
mov esi, dword [esp + 0x5c]
mov ecx, esi
call fcn.00784520
test al, al
jne 0x802c5d
jmp 0x802c62
mov esi, dword [esp + 0x54]
inc dword [esi + 0x10]
mov al, 1
mov byte [esp + 0x58], al
lea ecx, [esp + 0x54]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x4c]
call fcn.007a5a20
mov dword [esp + 0x168], esi
push 4
push 0x101000
push 0xc0
push 0
push ebx
call ebp
mov esi, eax
lea eax, [esp + 0x1c]
push eax
push 0xc0
lea eax, [esp + 0xb8]
push eax
push esi
push ebx
call dword [0x100b5180]
test eax, eax
je 0x802daf
push ebx
call fcn.00824640
mov edi, eax
add esp, 4
test edi, edi
je 0x802daf
lea eax, [esp + 0x50]
push eax
push 0
push esi
push dword [esp + 0x30]
push dword [esp + 0x9b4]
push 0
push ebx
call dword [0x100b5178]
mov esi, eax
test esi, esi
je 0x802daf
mov eax, dword [esp + 0x9a0]
test eax, eax
je 0x802cfc
mov ecx, dword [esp + 0x50]
mov dword [eax], ecx
mov ecx, dword [0x100d6f34]
lea eax, [esp + 0xa4]
mov ebp, dword [esp + 0x14]
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], esi
test ecx, ecx
je 0x802d3e
push 0
push 0
add ecx, 0xb60
push 1
push eax
push 3
mov eax, dword [ecx]
call dword [eax + 0x24]
call eax
jmp 0x802d4b
push 0xffffffffffffffff
push 0
push eax
push 3
call dword [0x100b5118]
test eax, eax
jne 0x802daf
mov ecx, dword [0x100d71e8]
push edi
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, dword [0x100d6f34]
add ecx, 0x710
push ebp
mov eax, dword [ecx]
call dword [eax + 0x24]
call eax
cmp dword [esp + 0x9a8], 0
je 0x802d80
push esi
call dword [0x100b5188]
mov eax, dword [esp + 0x99c]
test eax, eax
je 0x802d94
mov dword [eax], esi
mov esi, 1
jmp 0x802db1
mov ecx, dword [0x100d6f34]
add ecx, 0x710
push esi
mov eax, dword [ecx]
call dword [eax + 0x24]
call eax
mov esi, 1
jmp 0x802db1
xor esi, esi
mov eax, dword [esp + 0x68]
test eax, eax
je 0x802dc2
push eax
call fcn.00820320
add esp, 4
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x95c
ret 0x48