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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100a8b4e
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
push ebx
push esi
push edi
mov eax, dword [0x100bc210]
xor eax, esp
push eax
lea eax, [esp + 0xf8]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x24], ebx
push 0x1000c9d4
lea eax, [esp + 0x30]
push eax
call fcn.1005f448
and dword [esp + 0x100], 0
mov esi, dword [ebx + 0x18]
mov edi, 0x1000ca30
push edi
lea eax, [esp + 0xa4]
push eax
call fcn.1005f448
mov byte [esp + 0x100], 1
lea eax, [esp + 0x2c]
push 0x10014390
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], esi
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 8]
mov esi, dword [ebx + 0x2c]
xor edi, edi
push edi
call fcn.100877d7
pop ecx
mov dword [esi + 0x64], eax
mov dword [esi + 0x68], edx
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], edi
mov byte [esp + 0x100], 3
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
call dword [eax]
test eax, eax
je 0x100655f9
push dword [ebx + 0x14]
mov eax, dword [ebx]
push edi
mov ecx, ebx
call dword [eax + 0x14]
mov ecx, dword [ebx + 0x14]
mov edx, dword [ecx]
push eax
call dword [edx + 0x1c]
lea ebx, [esp + 0x5c]
lea esi, [esp + 0x40]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
call fcn.1006989c
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x14]
mov eax, dword [ecx]
inc edi
call dword [eax]
mov ebx, dword [esp + 0x24]
cmp edi, eax
jb 0x100655bc
lea eax, [esp + 0x40]
push eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0xd0]
call fcn.1004eec0
mov byte [esp + 0x100], 4
and dword [esp + 0x6c], 0
mov eax, edi
mov dword [esp + 0x98], eax
lea eax, [esp + 0x6c]
push 0
mov ecx, edi
mov dword [esp + 0x98], 0x1001c064
mov dword [esp + 0xa0], eax
call fcn.1004efca
mov esi, ebx
call fcn.1006a711
push ebx
call fcn.1006a7fd
push dword [ebp + 8]
mov edi, ebx
call fcn.1006ac0f
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
and dword [esp + 0x28], 0
call dword [eax]
test eax, eax
je 0x100662ae
cmp byte [ebx + 4], 0
jne 0x100662b4
push dword [ebx + 0x14]
mov eax, dword [ebx]
push dword [esp + 0x2c]
mov ecx, ebx
call dword [eax + 0x14]
mov esi, eax
push 0xff
lea ecx, [esp + 0xd0]
mov dword [esp + 0x5c], esi
call fcn.1004efca
lea ecx, [esp + 0xcc]
call fcn.1004ef8f
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
lea edx, [esp + 0xb0]
push edx
call dword [eax + 0x20]
push 0x100143f4
lea ecx, [esp + 0xb8]
push ecx
mov edi, eax
mov byte [esp + 0x108], 5
call fcn.1005fe35
push 0x100143d0
lea ecx, [esp + 0xc0]
push ecx
mov edi, eax
mov byte [esp + 0x108], 6
call fcn.1005fdda
mov byte [esp + 0x100], 7
mov eax, dword [eax]
mov ecx, dword [ebx + 0x18]
mov edx, dword [ecx]
push eax
push 4
call dword [edx + 4]
mov eax, dword [esp + 0xbc]
add eax, 0xfffffff0
call fcn.10084c29
mov eax, dword [esp + 0xb4]
add eax, 0xfffffff0
call fcn.10084c29
mov byte [esp + 0x100], 4
mov eax, dword [esp + 0xac]
add eax, 0xfffffff0
call fcn.10084c29
jmp 0x10065760
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
call dword [eax + 0x24]
test al, al
jne 0x1006576d
mov eax, dword [ebx]
push 0x3e8
mov ecx, ebx
call dword [eax + 0x18]
cmp byte [ebx + 4], 0
jne 0x100662e3
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
call dword [eax + 8]
test al, al
je 0x1006573d
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
lea edx, [esp + 0xbc]
push edx
call dword [eax + 0x20]
push 0x10014414
lea ecx, [esp + 0xc8]
push ecx
mov edi, eax
mov byte [esp + 0x108], 8
call fcn.1005fdda
mov byte [esp + 0x100], 9
mov eax, dword [eax]
mov ecx, dword [ebx + 0x18]
mov edx, dword [ecx]
push eax
push 4
call dword [edx + 4]
mov eax, dword [esp + 0xc4]
add eax, 0xfffffff0
call fcn.10084c29
mov byte [esp + 0x100], 4
mov eax, dword [esp + 0xb8]
add eax, 0xfffffff0
call fcn.10084c29
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
call dword [eax + 0x24]
test al, al
je 0x1006584f
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
lea edx, [esp + 0xb4]
push edx
call dword [eax + 0x20]
push 0x10014450
lea ecx, [esp + 0xcc]
push ecx
mov edi, eax
mov byte [esp + 0x108], 0xa
call fcn.1005fdda
mov byte [esp + 0x100], 0xb
mov eax, dword [eax]
mov ecx, dword [ebx + 0x18]
mov edx, dword [ecx]
push eax
push 7
call dword [edx + 4]
mov eax, dword [esp + 0xc8]
add eax, 0xfffffff0
call fcn.10084c29
mov byte [esp + 0x100], 4
mov eax, dword [esp + 0xb0]
add eax, 0xfffffff0
call fcn.10084c29
jmp 0x10065e90
push dword [ebx + 0x10]
mov edi, dword [ebx + 0x18]
lea eax, [esp + 0xd0]
push eax
push dword [ebx + 0x2c]
mov ecx, ebx
call fcn.100538ae
test al, al
je 0x100662e3
mov ecx, dword [ebx + 0x14]
push dword [esp + 0x58]
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebx + 0x2c]
mov edx, dword [ebx + 0x3c]
xor esi, esi
mov edi, eax
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], esi
lea esi, [esp + 0x7c]
mov dword [esp + 0x14], edi
mov dword [esp + 0x74], 0x1001c20c
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], edx
call fcn.100626b7
push 0
push 0x100c43d8
push 0x100c4218
mov byte [esp + 0x10c], 0xc
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push 0
push dword [esp + 0x68]
call dword [eax + 4]
push eax
call fcn.10094655
mov dword [esp + 0x8c], eax
mov eax, dword [edi + 8]
add esp, 0x14
dec eax
cmp eax, 9
ja case.0x10065907.7
jmp dword [eax*4 + 0x1006635f]
mov esi, edi
mov ecx, ebx
call fcn.1006a437
jmp 0x100659bf
mov esi, dword [esp + 0x24]
mov ebx, edi
mov eax, esi
call fcn.10069e73
mov dword [esi + 0x1c], eax
mov ebx, esi
jmp 0x100659c2
mov esi, dword [esp + 0x24]
mov ebx, edi
mov eax, esi
call fcn.10069f76
jmp 0x10065929
mov esi, edi
mov ecx, ebx
call fcn.1006a2d3
jmp 0x100659bf
mov esi, edi
mov ecx, ebx
call fcn.1006a599
jmp 0x100659bf
mov esi, edi
mov ecx, ebx
call fcn.1006a077
jmp 0x100659bf
push edi
mov ecx, ebx
call fcn.1006a132
jmp 0x100659bf
push edi
mov ecx, ebx
call fcn.1006a1d2
jmp 0x100659bf
push 8
call fcn.10088115
pop ecx
test eax, eax
je 0x1006598f
mov byte [eax + 4], 0
mov dword [eax], 0x1001cb68
jmp 0x10065991
xor eax, eax
mov ecx, dword [ebx + 0x18]
push 0x100144c0
mov dword [ebx + 0x1c], eax
mov eax, dword [ecx]
push 4
call dword [eax + 4]
jmp 0x100659c2
push 8
call fcn.10088115
pop ecx
test eax, eax
je 0x100659bd
mov byte [eax + 4], 0
mov dword [eax], 0x1001cb68
jmp 0x100659bf
xor eax, eax
mov dword [ebx + 0x1c], eax
mov eax, dword [ebx + 0x18]
mov esi, dword [ebx + 0x2c]
and dword [esp + 0x50], 0
mov dword [esp + 0x4c], eax
mov eax, dword [esi + 0x6c]
or eax, dword [esi + 0x70]
mov byte [esp + 0x13], 1
mov byte [esp + 0x54], 0
jne 0x10065b58
push eax
call fcn.100877d7
pop ecx
mov dword [esi + 0x6c], eax
mov dword [esi + 0x70], edx
jmp 0x10065b58
cmp byte [esp + 0x13], 0
je 0x10065b62
push 0x1001d3e4
lea eax, [esp + 0x6c]
push eax
call fcn.1005f448
lea eax, [esp + 0x68]
push eax
mov byte [esp + 0x104], 0xd
mov esi, dword [0x100c68d4]
push 0
call fcn.1002aea8
mov byte [esp + 0x100], 0xc
mov eax, dword [esp + 0x68]
add eax, 0xfffffff0
call fcn.10084c29
mov ecx, dword [ebx + 0x1c]
mov eax, dword [ecx]
lea edx, [esp + 0x94]
push edx
call dword [eax + 4]
push dword [esp + 0x6c]
lea edi, [esp + 0x50]
call fcn.1004f148
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
dec eax
je 0x10065af4
dec eax
je 0x10065af4
dec eax
je 0x10065af4
sub eax, 3
je 0x10065af4
sub eax, 4
je 0x10065af4
push dword [esp + 0x50]
mov esi, dword [esp + 0x9c]
mov edi, dword [esp + 0xa0]
lea eax, [esp + 0x74]
push eax
call fcn.10050f78
sub esp, 0xc
mov eax, esp
mov byte [esp + 0x10c], 0xe
mov dword [eax], 0x1001af44
mov dword [eax], 0x1001c064
mov dword [eax + 4], esi
mov dword [eax + 8], edi
mov dword [esp + 0x3c], esp
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x88]
push eax
call fcn.100508d3
mov byte [esp + 0x13], al
mov byte [esp + 0x100], 0xc
mov eax, dword [esp + 0x70]
add eax, 0xfffffff0
call fcn.10084c29
mov al, byte [esp + 0x13]
jmp 0x10065b3a
sub esp, 0xc
mov eax, esp
mov dword [eax], 0x1001af44
mov dword [eax], 0x1001c064
mov ecx, dword [esp + 0xa4]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0xa8]
mov dword [eax + 8], ecx
mov eax, dword [0x100c68d4]
mov dword [esp + 0x3c], esp
push dword [eax + 0xbe8]
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x88]
push eax
call fcn.100506e5
mov byte [esp + 0x13], al
test al, al
je 0x10065b58
cmp byte [esp + 0x54], 0
jne 0x10065b58
cmp dword [esp + 0x50], 0x80070bc2
je 0x10065b58
and dword [esp + 0x50], 0
cmp byte [ebx + 4], 0
je 0x100659f9
mov esi, dword [ebx + 0x1c]
call fcn.1004b733
mov dword [ebx + 0x1c], eax
test esi, esi
je 0x10065b79
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
lea edi, [esp + 0x4c]
call fcn.1004f1b4
test al, al
je 0x10065e33
mov ecx, dword [ebx + 0x14]
mov esi, dword [esp + 0x58]
mov eax, dword [ecx]
push esi
call dword [eax + 4]
push 0
push 0x100c4330
push 0x100c4218
push 0
push eax
call fcn.10094655
mov ecx, dword [ebx + 8]
add esp, 0x14
dec ecx
je 0x10065bca
dec ecx
je 0x10065bc2
dec ecx
jne 0x10065bca
mov ecx, dword [eax + 0x2c]
mov al, byte [eax + 0x30]
jmp 0x10065bd0
mov ecx, dword [eax + 0x1c]
mov al, byte [eax + 0x20]
jmp 0x10065bd0
mov ecx, dword [eax + 0xc]
mov al, byte [eax + 0x10]
cmp byte [ebx + 0x24], 0
mov byte [esp + 0x60], al
je 0x10065be8
test al, al
jne 0x10065be8
mov eax, dword [ebx + 0x24]
mov ecx, dword [ebx + 0x20]
mov dword [esp + 0x34], eax
push 2
pop edi
cmp ecx, edi
je 0x10065eaa
test ecx, ecx
je 0x100660b7
cmp ecx, 1
jne 0x10065e6b
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
test al, al
jne 0x10065dfb
cmp byte [esp + 0x60], al
jne 0x10065dfb
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
lea edx, [esp + 0xc4]
push edx
call dword [eax + 0x20]
mov dword [esp + 0x1c], eax
mov byte [esp + 0x100], 0x1b
mov eax, dword [ebx + 0x40]
mov esi, dword [0x100c68d4]
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0xbe4]
cmp eax, 1
je 0x10065c61
cmp eax, edi
jne 0x10065dc0
push 3
pop eax
call fcn.1002af8d
mov eax, dword [0x100c68d4]
lea ecx, [esp + 0x3c]
call fcn.1002afb8
mov byte [esp + 0x100], 0x1c
mov esi, dword [esp + 0x14]
mov ecx, dword [esi + 0x3c]
push eax
push 0x1ce
call fcn.1002f8bd
mov edi, eax
mov byte [esp + 0x100], 0x1b
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
call fcn.10084c29
push 0x10014ee0
lea eax, [esp + 0x24]
push eax
call fcn.1005f448
push edi
push esi
lea edi, [esp + 0x28]
mov byte [esp + 0x108], 0x1d
call fcn.10068fcb
mov byte [esp + 0x100], 0x1b
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
call fcn.10084c29
mov esi, dword [esp + 0x1c]
mov eax, dword [esi]
sub eax, 0x10
call fcn.10084bc8
add eax, 0x10
mov dword [esp + 0x18], eax
push 0x1000b180
xor ecx, ecx
mov byte [esp + 0x104], 0x1e
call fcn.1005fa0d
cmp eax, 0xffffffff
je 0x10065d3d
mov ecx, eax
lea edx, [esp + 0x38]
mov eax, esi
call fcn.1005fc53
lea edi, [esp + 0x18]
mov byte [esp + 0x100], 0x1f
call fcn.1005f5c3
mov byte [esp + 0x100], 0x1e
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
call fcn.10084c29
mov esi, dword [esp + 0x14]
mov ecx, dword [esi + 0x3c]
lea eax, [esp + 0x18]
push eax
push 0x1cd
call fcn.1002f8bd
mov edi, eax
push 0x10014f40
lea eax, [esp + 0x68]
push eax
call fcn.1005f448
push edi
push esi
lea edi, [esp + 0x6c]
mov byte [esp + 0x108], 0x20
call fcn.10068fcb
mov eax, dword [esp + 0x64]
add eax, 0xfffffff0
call fcn.10084c29
mov eax, dword [0x100c68d4]
mov edi, dword [esp + 0x18]
mov esi, eax
add eax, 0x9e4
push eax
mov edx, edi
mov ecx, 0xff
call fcn.10084778
mov ecx, dword [esp + 0x30]
xor eax, eax
mov word [esi + 0xbe0], ax
mov eax, dword [0x100c68d4]
mov dword [eax + 0xbec], ecx
lea eax, [edi - 0x10]
call fcn.10084c29
mov byte [esp + 0x100], 0xc
mov eax, dword [esp + 0xc0]
add eax, 0xfffffff0
call fcn.10084c29
mov edx, dword [esp + 0x50]
lea ecx, [ebx + 0x30]
call fcn.1004f110
mov ecx, dword [ebx + 0x18]
mov eax, dword [ecx]
push 0x100145d8
push 0
call dword [eax + 4]
push 0x10014658
push 0
jmp 0x10065e02
push 0x10014700
push 1
mov ecx, dword [ebx + 0x18]
mov eax, dword [ecx]
call dword [eax + 4]
cmp byte [ebx + 4], 0
jne 0x10066295
mov edi, dword [ebp + 8]
mov eax, dword [ebx]
mov esi, dword [edi]
mov ecx, ebx
call dword [eax + 0x24]
xor ecx, ecx
test al, al
sete cl
lea ecx, [ecx + ecx + 2]
push ecx
mov ecx, edi
call dword [esi + 4]
jmp 0x10065e6b
mov edx, dword [esp + 0x50]
mov esi, 0x80070bc2
cmp edx, esi
jne 0x10065e63
mov ecx, dword [ebx + 0x18]
mov eax, dword [ecx]
push 0x1001477c
push 4
call dword [eax + 4]
lea ecx, [ebx + 0x30]
mov edx, esi
call fcn.1004f110
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
call dword [eax + 0x10]
jmp 0x10065e6b
lea ecx, [ebx + 0x30]
call fcn.1004f110
mov ecx, dword [ebx + 0x14]
push dword [esp + 0x58]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov byte [esp + 0x100], 4
lea esi, [esp + 0x7c]
mov dword [esp + 0x74], 0x1001c20c
call fcn.100626b7
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
inc dword [esp + 0x28]
call dword [eax]
cmp dword [esp + 0x28], eax
jb 0x1006566d
jmp 0x100662ae
mov edx, dword [esp + 0x50]
lea ecx, [ebx + 0x30]
call fcn.1004f110
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
lea edx, [esp + 0x40]
push edx
call dword [eax + 0x20]
mov dword [esp + 0x1c], eax
mov byte [esp + 0x100], 0xf
mov eax, dword [ebx + 0x40]
mov esi, dword [0x100c68d4]
mov dword [esp + 0x38], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0xbe4]
cmp eax, 1
je 0x10065ef7
cmp eax, edi
jne 0x10066056
push 3
pop eax
call fcn.1002af8d
mov eax, dword [0x100c68d4]
lea ecx, [esp + 0x30]
call fcn.1002afb8
mov byte [esp + 0x100], 0x10
mov esi, dword [esp + 0x20]
mov ecx, dword [esi + 0x3c]
push eax
push 0x1ce
call fcn.1002f8bd
mov edi, eax
mov byte [esp + 0x100], 0xf
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
call fcn.10084c29
push 0x10014ee0
lea eax, [esp + 0x18]
push eax
call fcn.1005f448
push edi
push esi
lea edi, [esp + 0x1c]
mov byte [esp + 0x108], 0x11
call fcn.10068fcb
mov byte [esp + 0x100], 0xf
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.10084c29
mov esi, dword [esp + 0x1c]
mov eax, dword [esi]
sub eax, 0x10
call fcn.10084bc8
add eax, 0x10
mov dword [esp + 0x18], eax
push 0x1000b180
xor ecx, ecx
mov byte [esp + 0x104], 0x12
call fcn.1005fa0d
cmp eax, 0xffffffff
je 0x10065fd3
mov ecx, eax
lea edx, [esp + 0x30]
mov eax, esi
call fcn.1005fc53
lea edi, [esp + 0x18]
mov byte [esp + 0x100], 0x13
call fcn.1005f5c3
mov byte [esp + 0x100], 0x12
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
call fcn.10084c29
mov esi, dword [esp + 0x20]
mov ecx, dword [esi + 0x3c]
lea eax, [esp + 0x18]
push eax
push 0x1cd
call fcn.1002f8bd
mov edi, eax
push 0x10014f40
lea eax, [esp + 0x18]
push eax
call fcn.1005f448
push edi
push esi
lea edi, [esp + 0x1c]
mov byte [esp + 0x108], 0x14
call fcn.10068fcb
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.10084c29
mov eax, dword [0x100c68d4]
mov edi, dword [esp + 0x18]
mov esi, eax
add eax, 0x9e4
push eax
mov edx, edi
mov ecx, 0xff
call fcn.10084778
mov ecx, dword [esp + 0x38]
xor eax, eax
mov word [esi + 0xbe0], ax
mov eax, dword [0x100c68d4]
mov dword [eax + 0xbec], ecx
lea eax, [edi - 0x10]
call fcn.10084c29
mov byte [esp + 0x100], 0xc
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
call fcn.10084c29
mov ecx, dword [ebx + 0x18]
mov eax, dword [ecx]
push 0x10014520
push 0
call dword [eax + 4]
mov al, byte [ebx + 4]
mov esi, dword [ebp + 8]
mov edx, dword [esi]
xor ecx, ecx
test al, al
sete cl
dec ecx
and ecx, 3
add ecx, 3
push ecx
mov ecx, esi
call dword [edx + 4]
push dword [esp + 0x28]
mov ecx, ebx
push esi
call fcn.10069de6
lea esi, [esp + 0x7c]
mov dword [esp + 0x74], 0x1001c20c
call fcn.100626b7
jmp 0x100662e3
mov edx, dword [esp + 0x50]
lea ecx, [ebx + 0x30]
call fcn.1004f110
mov ecx, dword [ebx + 0x14]
mov eax, dword [ecx]
push esi
lea edx, [esp + 0x40]
push edx
call dword [eax + 0x20]
mov dword [esp + 0x1c], eax
mov byte [esp + 0x100], 0x15
mov eax, dword [ebx + 0x40]
mov esi, dword [0x100c68d4]
mov dword [esp + 0x38], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0xbe4]
cmp eax, 1
je 0x10066104
cmp eax, edi
jne 0x10066263
push 3
pop eax
call fcn.1002af8d
mov eax, dword [0x100c68d4]
lea ecx, [esp + 0x30]
call fcn.1002afb8
mov byte [esp + 0x100], 0x16
mov esi, dword [esp + 0x20]
mov ecx, dword [esi + 0x3c]
push eax
push 0x1ce
call fcn.1002f8bd
mov edi, eax
mov byte [esp + 0x100], 0x15
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
call fcn.10084c29
push 0x10014ee0
lea eax, [esp + 0x18]
push eax
call fcn.1005f448
push edi
push esi
lea edi, [esp + 0x1c]
mov byte [esp + 0x108], 0x17
call fcn.10068fcb
mov byte [esp + 0x100], 0x15
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.10084c29
mov esi, dword [esp + 0x1c]
mov eax, dword [esi]
sub eax, 0x10
call fcn.10084bc8
add eax, 0x10
mov dword [esp + 0x18], eax
push 0x1000b180
xor ecx, ecx
mov byte [esp + 0x104], 0x18
call fcn.1005fa0d
cmp eax, 0xffffffff
je 0x100661e0
mov ecx, eax
lea edx, [esp + 0x30]
mov eax, esi
call fcn.1005fc53
lea edi, [esp + 0x18]
mov byte [esp + 0x100], 0x19
call fcn.1005f5c3
mov byte [esp + 0x100], 0x18
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
call fcn.10084c29
mov esi, dword [esp + 0x20]
mov ecx, dword [esi + 0x3c]
lea eax, [esp + 0x18]
push eax
push 0x1cd
call fcn.1002f8bd
mov edi, eax
push 0x10014f40
lea eax, [esp + 0x18]
push eax
call fcn.1005f448
push edi
push esi
lea edi, [esp + 0x1c]
mov byte [esp + 0x108], 0x1a
call fcn.10068fcb
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.10084c29
mov eax, dword [0x100c68d4]
mov edi, dword [esp + 0x18]
mov esi, eax
add eax, 0x9e4
push eax
mov edx, edi
mov ecx, 0xff
call fcn.10084778
mov ecx, dword [esp + 0x38]
xor eax, eax
mov word [esi + 0xbe0], ax
mov eax, dword [0x100c68d4]
mov dword [eax + 0xbec], ecx
lea eax, [edi - 0x10]
call fcn.10084c29
mov byte [esp + 0x100], 0xc
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
call fcn.10084c29
mov ecx, dword [ebx + 0x18]
mov eax, dword [ecx]
push 0x10014580
push 0
call dword [eax + 4]
cmp byte [ebx + 4], 0
lea esi, [esp + 0x7c]
jne 0x10066299
jmp 0x100660a5
lea esi, [esp + 0x7c]
mov byte [esp + 0x100], 4
mov dword [esp + 0x74], 0x1001c20c
call fcn.100626b7
cmp byte [ebx + 4], 0
je 0x100662e3
cmp dword [esp + 0x28], 0
jbe 0x100662e3
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
test al, al
je 0x100662e3
mov ecx, dword [ebx + 0x18]
mov eax, dword [ecx]
push 0x100147b0
push 1
call dword [eax + 4]
push dword [esp + 0x28]
mov ecx, ebx
push dword [ebp + 8]
call fcn.10069de6
lea esi, [esp + 0xd4]
mov dword [esp + 0xcc], 0x1001c080
call fcn.10072f02
cmp dword [esp + 0x40], 0
je 0x1006630b
push dword [esp + 0x40]
call fcn.10087e79
pop ecx
lea eax, [esp + 0xa0]
push eax
mov byte [esp + 0x104], 0
call fcn.10026674
or dword [esp + 0x100], 0xffffffff
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
call fcn.10084c29
mov edi, ebx
call fcn.1006ad9b
mov ecx, dword [ebp + 8]
push dword [ebx + 0x34]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4