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

Disassembly:
sub esp, 0x3c
mov ecx, dword [esp + 0x48]
push ebx
mov ebx, dword [esp + 0x44]
push ebp
mov ebp, dword [esp + 0x4c]
push esi
mov eax, dword [ebx + 0x1c]
xor esi, esi
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0x1c], eax
xor eax, eax
push edi
xor edi, edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x28], esi
cmp ax, word [ecx + 0x14]
jae 0x100d65cc
nop dword [eax]
mov eax, dword [ebx + 0x2e0]
mov edx, eax
mov ebx, dword [esp + 0x28]
and edx, 1
movzx ebx, bx
mov dword [esp + 0x2c], ebx
test eax, 0x400
je 0x100d632b
movzx ebx, word [ecx + ebx*2 + 0x40]
mov edx, 0x26
add ebx, ecx
jmp 0x100d6351
mov eax, dword [esp + 0x58]
mov ecx, edx
neg ecx
mov dword [esp + 0x2c], ebx
sbb ecx, ecx
and ecx, 6
lea eax, [eax + ebx*2]
movzx ebx, word [eax + ecx + 0x1a]
mov ecx, dword [esp + 0x58]
add ebx, ecx
neg edx
sbb edx, edx
and edx, 6
mov eax, dword [esp + 0x2c]
lea eax, [edx + eax*2]
movzx eax, word [eax + ecx + 0x1c]
add eax, ecx
mov dword [esp + 0x2c], eax
movzx eax, byte [ebx + 2]
and eax, 0xffffff7f
cmp eax, 3
jne 0x100d63e3
push dword [esp + 0x64]
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x3c]
push eax
push dword [ebx + 4]
mov ebx, dword [esp + 0x64]
push ebp
push ebx
call fcn.10105fd0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x100d63a5
mov edi, 0xffff8704
jmp 0x100d65ed
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 1]
cmp dword [esp + 0x1c], eax
jae 0x100d63d9
lea ecx, [esp + 0x14]
push ecx
push eax
push dword [esp + 0x2c]
call fcn.100dc870
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x100d65af
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 1]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x14]
mov byte [ecx + eax], 0
jmp 0x100d6439
cmp eax, 1
jne 0x100d6435
movzx eax, word [ebx]
inc eax
cmp dword [esp + 0x1c], eax
jae 0x100d6416
lea ecx, [esp + 0x14]
push ecx
push eax
push dword [esp + 0x2c]
call fcn.100dc870
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x100d65af
movzx eax, word [ebx]
inc eax
mov dword [esp + 0x1c], eax
movzx eax, word [ebx]
push eax
lea eax, [ebx + 3]
push eax
push dword [esp + 0x1c]
call fcn.102207f0
movzx ecx, word [ebx]
add esp, 0xc
mov eax, dword [esp + 0x14]
mov byte [ecx + eax], 0
mov ebx, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
cmp word [ecx], 4
je 0x100d644d
mov edi, 0xffff8704
jmp 0x100d65ed
mov eax, dword [esp + 0x24]
mov ecx, dword [ecx + 3]
mov dword [esp + 0x10], ecx
test byte [eax + 0x9c], 4
je 0x100d6484
mov eax, ecx
mov byte [esp + 0x13], cl
shr eax, 0x18
mov byte [esp + 0x10], al
mov eax, ecx
shr eax, 0x10
mov byte [esp + 0x11], al
mov eax, ecx
shr eax, 8
mov byte [esp + 0x12], al
mov ecx, dword [esp + 0x10]
cmp ecx, dword [ebp + 0x20]
ja 0x100d65eb
lea eax, [esp + 0x18]
push eax
push 0
push 0
push dword [ebp]
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x34]
call fcn.10109150
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x100d65eb
push dword [esp + 0x64]
push dword [esp + 0x14]
push dword [esp + 0x20]
push ebp
push ebx
call fcn.100d6f00
mov esi, eax
add esp, 0x14
test esi, esi
je 0x100d64ed
push dword [ebx + 4]
mov edi, esi
push dword [esp + 0x1c]
push dword [ebp]
push dword [esp + 0x2c]
call fcn.1010adb0
add esp, 0x10
jmp 0x100d65ed
mov ecx, dword [esp + 0x18]
movzx eax, byte [ecx + 0x19]
sub eax, 8
je 0x100d6524
sub eax, 1
je 0x100d6509
mov edi, 0xffff8704
jmp 0x100d65ed
push dword [esp + 0x64]
push dword [esp + 0x14]
push ecx
push ebp
push ebx
call fcn.100fd630
mov esi, eax
add esp, 0x14
test esi, esi
je 0x100d653d
jmp 0x100d64d0
push dword [esp + 0x64]
push dword [esp + 0x14]
push ecx
push ebp
push ebx
call fcn.10108bd0
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x100d64d0
push dword [ebx + 4]
push dword [esp + 0x1c]
push dword [ebp]
push dword [esp + 0x2c]
call fcn.1010adb0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x100d65eb
push dword [esp + 0x10]
push ebp
push dword [esp + 0x68]
push dword [esp + 0x68]
push eax
push eax
push dword [esp + 0x2c]
push ebx
call fcn.100e7580
mov esi, eax
add esp, 0x20
test esi, esi
jne 0x100d65af
push dword [esp + 0x64]
mov esi, dword [esp + 0x64]
push esi
push dword [esp + 0x64]
push dword [esp + 0x1c]
push ebp
push ebx
call fcn.100d5a20
test eax, eax
push esi
push dword [esp + 0x78]
cmovne edi, eax
call fcn.100e7560
mov esi, eax
add esp, 0x20
test esi, esi
je 0x100d65ed
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x100d65cc
push eax
push dword [esp + 0x28]
call fcn.100dc7e0
mov ecx, dword [esp + 0x60]
add esp, 8
push dword [ecx + 8]
push ebp
call fcn.10106830
add esp, 8
test eax, eax
jne 0x100d65e3
test edi, edi
cmovne esi, edi
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
mov edi, esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x58]
add eax, 2
mov dword [esp + 0x28], eax
cmp ax, word [ecx + 0x14]
jb 0x100d6300
jmp 0x100d65b3