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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
mov eax, dword [0x10100008]
xor eax, esp
mov dword [esp + 0x20], eax
push ebx
push esi
mov esi, ecx
push edi
movsx ebx, word [esi + 0x4c]
mov eax, dword [esi]
mov dword [esp + 0x10], eax
mov edi, dword [esi + ebx*4 + 0x78]
mov eax, dword [eax + 4]
mov dword [esp + 0x18], eax
movzx eax, word [esi + ebx*2 + 0x4e]
cmp ax, word [edi + 0x12]
jae 0x1001dfe1
cmp byte [esi + 0x49], 1
jne 0x1001dfe1
mov edx, eax
mov eax, dword [edi + 0x40]
mov dword [esp + 0x20], edx
movzx ecx, byte [eax + edx*2 + 1]
movzx eax, byte [eax + edx*2]
shl eax, 8
or ecx, eax
movzx eax, word [edi + 0x14]
and ecx, eax
add ecx, dword [edi + 0x38]
cmp byte [edi + 5], 0
mov dword [esp + 0x1c], ecx
jne 0x1001ddc4
and byte [esi + 0x48], 0xf1
xor eax, eax
mov dword [esp + 0x28], 0
mov word [esi + 0x2c], ax
movzx ecx, word [esi + ebx*2 + 0x4e]
test cx, cx
je 0x1001ddb1
mov eax, dword [esi + ebx*4 + 0x78]
cmp byte [eax + 5], 0
je 0x1001ddb1
lea eax, [ecx - 1]
mov word [esi + ebx*2 + 0x4e], ax
jmp 0x1001ddc4
lea edx, [esp + 0x28]
mov ecx, esi
call fcn.1001ad00
test eax, eax
jne 0x1001dfe6
mov ecx, dword [esp + 0x18]
mov edx, dword [esi + 0x3c]
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x1001ddfd
cmp ecx, esi
je 0x1001dddf
test edx, edx
je 0x1001dde8
cmp dword [ecx + 0x3c], edx
je 0x1001dde8
mov ecx, dword [ecx + 8]
test ecx, ecx
jne 0x1001ddd2
jmp 0x1001ddfd
test ecx, ecx
je 0x1001ddfd
push esi
call fcn.10016220
add esp, 4
test eax, eax
jne 0x1001dfe6
cmp dword [esi + 0x10], 0
jne 0x1001de32
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 8]
test eax, eax
je 0x1001de32
test byte [eax + 0x48], 0x10
je 0x1001de2b
cmp dword [eax + 0x18], ecx
jne 0x1001de2b
cmp dword [eax + 0x1c], edx
jne 0x1001de2b
mov byte [eax + 0x49], 0
mov eax, dword [eax + 8]
test eax, eax
jne 0x1001de17
mov edx, dword [edi + 0x44]
mov ecx, dword [edx + 0x10]
mov eax, dword [ecx + 0x94]
cmp eax, dword [ecx + 0x98]
mov ecx, edx
jbe 0x1001de4f
call fcn.10012ba0
jmp 0x1001de54
call fcn.10012890
test eax, eax
jne 0x1001dfe6
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x14]
push eax
mov ecx, edi
call fcn.1001bda0
mov edx, dword [esp + 0x24]
add esp, 4
mov dword [esp + 0x10], eax
mov ecx, edi
lea eax, [esp + 0x10]
push eax
movzx eax, word [esp + 0x18]
push eax
call fcn.1001c350
mov eax, dword [esp + 0x18]
add esp, 8
test eax, eax
jne 0x1001dfe6
cmp byte [edi + 5], al
jne 0x1001df6f
movsx eax, word [esi + 0x4c]
mov edx, dword [esi + eax*4 + 0x78]
mov eax, dword [esi + ebx*4 + 0x7c]
mov dword [esp + 0x14], edx
movzx ecx, word [edx + 0x12]
mov eax, dword [eax + 0x48]
mov dword [esp + 0x1c], eax
mov eax, dword [edx + 0x40]
movzx edx, byte [eax + ecx*2 - 2]
movzx eax, byte [eax + ecx*2 - 1]
mov ecx, dword [esp + 0x14]
shl edx, 8
or edx, eax
movzx eax, word [ecx + 0x14]
and edx, eax
add edx, dword [ecx + 0x38]
mov dword [esp + 0x24], edx
call fcn.100168a0
movzx eax, ax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x50]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x44]
mov ecx, dword [edx + 0x10]
mov eax, dword [ecx + 0x94]
cmp eax, dword [ecx + 0x98]
mov ecx, edx
jbe 0x1001df17
call fcn.10012ba0
jmp 0x1001df1c
call fcn.10012890
mov edx, dword [esp + 0x20]
mov ecx, edi
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x20]
mov eax, dword [esp + 0x30]
push dword [esp + 0x20]
add eax, 4
push eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffffc
push eax
call fcn.1001c430
add esp, 0x14
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x18]
mov ecx, eax
push dword [esp + 0x2c]
movzx edx, word [eax + 0x12]
dec edx
call fcn.1001c350
mov eax, dword [esp + 0x18]
add esp, 8
test eax, eax
jne 0x1001dfe6
mov ecx, esi
call fcn.1001d800
mov edi, eax
test edi, edi
jne 0x1001dfcd
movzx eax, word [esi + 0x4c]
movsx ecx, ax
cmp ecx, ebx
jle 0x1001dfc6
mov ecx, eax
nop dword [eax]
movsx eax, cx
mov edx, dword [esi + eax*4 + 0x78]
lea eax, [ecx - 1]
mov word [esi + 0x4c], ax
movzx eax, ax
test edx, edx
je 0x1001dfb1
mov ecx, dword [edx + 0x44]
call fcn.100124c0
movzx eax, word [esi + 0x4c]
movzx ecx, ax
cwde
cmp eax, ebx
jg 0x1001df90
mov ecx, esi
call fcn.1001d800
mov edi, eax
test edi, edi
jne 0x1001dfcd
mov ecx, esi
call fcn.1001a340
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100be889
mov esp, ebp
pop ebp
ret
mov eax, 1
mov ecx, dword [esp + 0x2c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100be889
mov esp, ebp
pop ebp
ret