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

Disassembly:
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
sub esp, 0x68
cmp ecx, 2
jbe 0x100d8938
mov eax, 5
add esp, 0x68
ret
cmp eax, 1
jne 0x100d894b
mov dword [esp + 8], 0x10165db8
mov dword [esp + 0x10], eax
jmp 0x100d895b
mov dword [esp + 8], 0x10165e40
mov dword [esp + 0x10], 2
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx]
cmp eax, 0x59c
mov ecx, dword [ecx + 4]
mov dword [esp + 0x24], ecx
jb 0x100d8978
mov eax, 3
add esp, 0x68
ret
lea eax, [eax + eax*2]
push ebx
mov ebx, dword [esp + 0x78]
lea eax, [eax*4 + 0x1015b640]
mov eax, dword [eax]
push ebp
mov ebp, dword [esp + 0x80]
shr eax, 0x16
push esi
lea eax, [eax + eax*2]
push edi
xor edi, edi
test ecx, 0x32000
mov dword [esp + 0x38], eax
mov eax, dword [eax*4 + 0x1015fb90]
je 0x100d8a35
mov esi, ecx
and esi, 0x2000
je 0x100d89e7
test eax, 0x4000
jne 0x100d89cb
test ecx, 0x30000
je 0x100d89da
cmp ebp, 1
jb 0x100d89da
mov edx, dword [ebx]
and dl, 7
cmp dl, 2
je 0x100d89e7
pop edi
pop esi
pop ebp
mov eax, 0x1c
pop ebx
add esp, 0x68
ret
mov edx, ecx
and edx, 0x30000
je 0x100d8a35
cmp esi, edi
je 0x100d8a4b
cmp edx, 0x30000
je 0x100d8a4b
test ecx, 0x10000
je 0x100d8a19
test eax, 0x8000
jne 0x100d8a19
pop edi
pop esi
pop ebp
mov eax, 0x1d
pop ebx
add esp, 0x68
ret
test ecx, 0x20000
je 0x100d8a35
test eax, 0x10000
jne 0x100d8a35
pop edi
pop esi
pop ebp
mov eax, 0x1e
pop ebx
add esp, 0x68
ret
mov edx, ecx
and edx, 0xc000
mov dword [esp + 0x3c], edx
je 0x100d8a83
cmp edx, 0xc000
jne 0x100d8a58
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x68
ret
test ecx, 0x4000
je 0x100d8a67
test eax, 0x1000
je 0x100d8a76
test ecx, 0x8000
je 0x100d8a83
test eax, 0x2000
jne 0x100d8a83
pop edi
pop esi
pop ebp
mov eax, 0x1f
pop ebx
add esp, 0x68
ret
xor edx, edx
cmp ebp, edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edx
jbe 0x100d8e6f
mov edi, ebx
lea eax, [esp + 0x4f]
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], eax
jmp 0x100d8ab0
mov eax, dword [edi]
mov ecx, eax
and ecx, 7
je 0x100d8ed3
xor ebp, ebp
add ecx, 0xffffffff
xor ebx, ebx
cmp ecx, 3
mov dword [esp + 0x24], ebp
ja case.default.0x100d8ad1
jmp dword [ecx*4 + 0x100d92ac]
shr eax, 3
and eax, 0x1f
mov esi, eax
cmp esi, 0x16
jae 0x100d8e92
mov eax, dword [esi*4 + 0x10165d38]
test eax, eax
je 0x100d8e92
mov ecx, dword [edi + 4]
cmp ecx, 0x100
jae 0x100d8b29
cmp ecx, 0x20
jae 0x100d8e9f
mov ebx, 1
shl ebx, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + esi*4], ebx
je 0x100d8e9f
or dword [esp + 0x7c], ebx
jmp 0x100d8e32
or ebx, 0xffffffff
jmp 0x100d8e32
mov ecx, dword [esp + 0x14]
mov edi, eax
mov esi, eax
shr edi, 3
shr esi, 8
mov edx, eax
and edx, 0xe00000
and edi, 0x1f
and esi, 0x1f
cmp edx, 0xc00000
mov dword [esp + 0x28], ecx
ja 0x100d8eac
test edi, edi
mov edx, dword [ecx + 0xc]
je 0x100d8bb2
shr eax, 0x10
test al, 1
jne 0x100d8b84
mov ecx, edi
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + 0x80], eax
je 0x100d8eb9
cmp edx, 0x100
jae 0x100d8b9b
mov ebx, 1
mov ecx, edx
shl ebx, cl
or dword [esp + 0x7c], ebx
jmp 0x100d8b9e
or ebx, 0xffffffff
test esi, esi
jne 0x100d8c05
mov edx, dword [esp + 0x14]
cmp dword [edx + 8], esi
jne 0x100d8bfd
mov ebp, 0x800
jmp 0x100d8bfd
cmp dword [esp + 0x20], 1
mov eax, dword [ecx + 8]
jne 0x100d8bfd
mov ecx, eax
add ecx, 0x80000000
mov ebp, edx
adc ebp, 0
mov dword [esp + 0x44], ebp
jne 0x100d8bd4
cmp ecx, 0xffffffff
jbe 0x100d8bf9
test edx, edx
jl 0x100d8eb9
jg 0x100d8be6
test eax, eax
jb 0x100d8eb9
test edx, edx
jg 0x100d8eb9
jl 0x100d8bf9
cmp eax, 0xffffffff
ja 0x100d8eb9
mov ebp, dword [esp + 0x24]
test esi, esi
je 0x100d8c88
mov ecx, esi
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + 0x84], eax
je 0x100d8eb9
cmp esi, 9
jne 0x100d8c2d
mov eax, 0x20000
or ebp, 0x11
jmp 0x100d8c5a
cmp esi, 0xa
jne 0x100d8c3c
mov eax, 0x20000
or ebp, 0x22
jmp 0x100d8c5a
cmp esi, 0xb
jne 0x100d8c4b
mov eax, 0x20000
or ebp, 0x44
jmp 0x100d8c5a
test edi, edi
mov eax, 0x10000
je 0x100d8c5a
or ebp, 0x4000
cmp edi, 0xe
jne 0x100d8c6a
test eax, 0x20000
jne 0x100d8eb9
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 4]
cmp ecx, 0x100
jae 0x100d8c84
mov edx, 1
shl edx, cl
or dword [esp + 0x7c], edx
xor ebx, ebx
jmp 0x100d8c8d
mov eax, 0x10000
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + 3]
cmp ecx, 0x40
ja case.0x100d8ca5.3
movzx edx, byte [ecx + 0x100d92e8]
jmp dword [edx*4 + 0x100d92bc]
or ebp, 0x8000
jmp 0x100d8e32
or ebp, 1
jmp 0x100d8e32
or ebp, 2
jmp 0x100d8e32
or ebp, 4
jmp 0x100d8e32
or ebp, 8
jmp 0x100d8e32
or ebp, 0x10
jmp 0x100d8e32
or ebp, 0x20
jmp 0x100d8e32
or ebp, 0x40
jmp 0x100d8e32
or ebp, 0x80
jmp 0x100d8e32
or ebp, 0x100
jmp 0x100d8e32
mov eax, dword [edi + 0xc]
test eax, eax
mov ecx, dword [edi + 8]
jl 0x100d8ddd
jg 0x100d8d1d
test ecx, ecx
jb 0x100d8ddd
test eax, eax
ja 0x100d8dc1
jb 0x100d8d2c
cmp ecx, 0xf
ja 0x100d8d36
mov eax, 0x7fc0000
jmp 0x100d8e32
test eax, eax
ja 0x100d8dc1
jb 0x100d8d45
cmp ecx, 0x7f
ja 0x100d8d4f
mov eax, 0x7f80000
jmp 0x100d8e32
test eax, eax
ja 0x100d8dc1
jb 0x100d8d5d
cmp ecx, 0xff
ja 0x100d8d67
mov eax, 0x7f00000
jmp 0x100d8e32
test eax, eax
ja 0x100d8dc1
jb 0x100d8d75
cmp ecx, 0x7fff
ja 0x100d8d7f
mov eax, 0x7e00000
jmp 0x100d8e32
test eax, eax
ja 0x100d8dc1
jb 0x100d8d8d
cmp ecx, 0xffff
ja 0x100d8d97
mov eax, 0x7c00000
jmp 0x100d8e32
test eax, eax
ja 0x100d8dc1
jb 0x100d8da5
cmp ecx, 0x7fffffff
ja 0x100d8daf
mov eax, 0x7800000
jmp 0x100d8e32
test eax, eax
ja 0x100d8dc1
jb 0x100d8dba
cmp ecx, 0xffffffff
ja 0x100d8dc1
mov eax, 0x7000000
jmp 0x100d8e32
cmp eax, 0x7fffffff
ja 0x100d8dd6
jb 0x100d8dcf
cmp ecx, 0xffffffff
ja 0x100d8dd6
mov eax, 0x6000000
jmp 0x100d8e32
mov eax, 0x4000000
jmp 0x100d8e32
not ecx
add ecx, 1
not eax
adc eax, 0
test eax, eax
ja 0x100d8e26
jb 0x100d8df5
cmp ecx, 0x80
ja 0x100d8dfc
mov eax, 0x2a80000
jmp 0x100d8e32
test eax, eax
ja 0x100d8e26
jb 0x100d8e0a
cmp ecx, 0x8000
ja 0x100d8e11
mov eax, 0x2a00000
jmp 0x100d8e32
test eax, eax
ja 0x100d8e26
jb 0x100d8e1f
cmp ecx, 0x80000000
ja 0x100d8e26
mov eax, 0x2800000
jmp 0x100d8e32
mov eax, 0x2000000
jmp 0x100d8e32
mov eax, 0x18000000
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x14]
or dword [esp + 0x1c], eax
mov word [ecx - 3], bp
mov ebp, dword [esp + 0x88]
add edx, 1
mov dword [ecx - 7], eax
mov byte [ecx], bl
add edi, 0x10
add ecx, 8
cmp edx, ebp
mov dword [esp + 0x2c], edx
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], ecx
jb 0x100d8ab0
cmp dword [esp + 0x20], 1
jne 0x100d8f19
test byte [esp + 0x1c], 0x10
je 0x100d8f37
pop edi
pop esi
pop ebp
mov eax, 0x32
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0x17
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0x19
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0x26
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0x2d
pop ebx
add esp, 0x68
ret
cmp edx, ebp
jae 0x100d8e6f
sub ebp, 1
cmp ebp, edx
mov dword [esp + 0x88], ebp
jbe 0x100d8e6f
mov eax, ebp
shl eax, 4
add eax, dword [esp + 0x84]
test byte [eax], 7
jne case.default.0x100d8ad1
sub ebp, 1
sub eax, 0x10
cmp ebp, edx
ja 0x100d8ef1
mov dword [esp + 0x88], ebp
jmp 0x100d8e6f
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 0x68
ret
test byte [esp + 0x1c], 2
je 0x100d8f37
test dword [esp + 0x7c], 0xffffff00
je 0x100d8f37
pop edi
pop esi
pop ebp
mov eax, 0x31
pop ebx
add esp, 0x68
ret
mov eax, dword [esp + 0x38]
mov eax, dword [eax*4 + 0x1015fb98]
mov ecx, eax
shr ecx, 8
shr eax, 0x12
and ecx, 0x3ff
lea ecx, [ecx*8 + 0x10164bb8]
and eax, 0xf
lea eax, [ecx + eax*8]
cmp ecx, eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], eax
je 0x100d9163
mov edx, ecx
add edx, 2
mov byte [esp + 0x13], 0
mov dword [esp + 0x14], edx
jmp 0x100d8f80
mov eax, dword [esp + 0x18]
movzx eax, byte [eax]
mov ecx, eax
shr ecx, 3
and ecx, dword [esp + 0x20]
test cl, 3
je 0x100d911e
mov edx, dword [esp + 0x88]
mov ebx, eax
and ebx, 7
xor ebp, ebp
cmp ebx, edx
mov byte [esp + 0x7c], 0
jne 0x100d903c
test edx, edx
jbe 0x100d9109
lea esi, [esp + 0x4f]
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + ebp]
mov ecx, dword [esi - 7]
mov edx, dword [eax*8 + 0x10164428]
test ecx, edx
lea eax, [eax*8 + 0x10164428]
jne 0x100d8ffc
test ecx, 0x7fc0000
je 0x100d9109
test edx, 0x7fc0000
je 0x100d9109
mov byte [esp + 0x7c], 1
jmp 0x100d9028
movzx edx, word [esi - 3]
test edx, edx
je 0x100d9010
movzx edi, word [eax + 4]
test edx, edi
je 0x100d9109
test ecx, 0x7fff
je 0x100d9028
movzx eax, byte [eax + 7]
test eax, eax
je 0x100d9028
test byte [esi], al
je 0x100d9109
add ebp, 1
add esi, 8
cmp ebp, dword [esp + 0x88]
jb 0x100d8fc0
jmp 0x100d9109
shr eax, 5
mov ecx, ebx
sub ecx, eax
cmp ecx, edx
jne 0x100d9109
xor ecx, ecx
xor ebp, ebp
test edx, edx
jbe 0x100d9109
lea edi, [esp + 0x48]
mov dword [esp + 0x30], edi
nop
cmp ecx, ebx
jae 0x100d9109
mov edx, dword [esp + 0x14]
movzx eax, byte [ecx + edx]
test dword [eax*8 + 0x10164428], 0x80000000
lea eax, [eax*8 + 0x10164428]
je 0x100d90a7
add ecx, 1
cmp ecx, ebx
jae 0x100d9109
mov eax, dword [esp + 0x14]
movzx eax, byte [ecx + eax]
test dword [eax*8 + 0x10164428], 0x80000000
lea eax, [eax*8 + 0x10164428]
jne 0x100d9084
mov esi, dword [edi]
mov edx, dword [eax]
test esi, edx
jne 0x100d90c6
test esi, 0x7fc0000
je 0x100d9109
test edx, 0x7fc0000
je 0x100d9109
mov byte [esp + 0x7c], 1
jmp 0x100d90ef
movzx edx, word [edi + 4]
test edx, edx
je 0x100d90da
movzx edi, word [eax + 4]
test edx, edi
je 0x100d9109
mov edi, dword [esp + 0x30]
test esi, 0x7fff
je 0x100d90ef
movzx eax, byte [eax + 7]
test eax, eax
je 0x100d90ef
test byte [edi + 7], al
je 0x100d9109
add ebp, 1
add edi, 8
add ecx, 1
cmp ebp, dword [esp + 0x88]
mov dword [esp + 0x30], edi
jb 0x100d9060
cmp ebp, dword [esp + 0x88]
jne 0x100d911e
mov al, byte [esp + 0x7c]
test al, al
je 0x100d914c
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x18]
add dword [esp + 0x14], 8
add eax, 8
cmp eax, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
jne 0x100d8f80
cmp byte [esp + 0x13], 0
je 0x100d9156
pop edi
pop esi
pop ebp
mov eax, 0x2c
pop ebx
add esp, 0x68
ret
mov ecx, dword [esp + 0x2c]
cmp dword [esp + 0x18], ecx
jne 0x100d9163
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0x68
ret
mov edx, dword [esp + 0x80]
mov ecx, dword [edx + 8]
test ecx, ecx
mov edi, dword [esp + 0x34]
jne 0x100d9181
test edi, 0x9c0000
je 0x100d929f
mov eax, dword [esp + 0x38]
mov eax, dword [eax*4 + 0x1015fb90]
mov edx, eax
shr edx, 0x14
test dl, 1
je 0x100d9288
test ecx, ecx
je 0x100d91cd
and ecx, 0xf8
cmp cl, 0x90
je 0x100d91b6
pop edi
pop esi
pop ebp
mov eax, 0x21
pop ebx
add esp, 0x68
ret
mov ecx, eax
shr ecx, 0x18
test cl, 1
jne 0x100d91cd
pop edi
pop esi
pop ebp
mov eax, 0x22
pop ebx
add esp, 0x68
ret
test edi, 0x800000
je 0x100d91ec
mov edx, eax
shr edx, 0x19
test dl, 1
jne 0x100d91ec
pop edi
pop esi
pop ebp
mov eax, 0x23
pop ebx
add esp, 0x68
ret
test edi, 0x100000
mov esi, dword [esp + 0x28]
je 0x100d922f
test esi, esi
je 0x100d9222
movzx ecx, byte [esi + 3]
test ecx, ecx
je 0x100d922f
mov edx, eax
shr edx, 0x1c
test dl, 1
je 0x100d9213
cmp ecx, 4
jne 0x100d9222
mov edx, eax
shr edx, 0x1d
test dl, 1
je 0x100d922f
cmp ecx, 8
je 0x100d922f
pop edi
pop esi
pop ebp
mov eax, 0x24
pop ebx
add esp, 0x68
ret
test edi, 0xc0000
je 0x100d929f
test esi, esi
jne 0x100d927b
test edi, 0x40000
je 0x100d9274
mov ecx, eax
shr ecx, 0x1a
test cl, 1
je 0x100d927b
test eax, 0x30000000
je 0x100d929f
mov eax, dword [0x10165f04]
mov ecx, dword [esp + 0x84]
cmp dword [ecx], eax
je 0x100d929f
cmp dword [ecx + 0x10], eax
je 0x100d929f
pop edi
lea eax, [esi + 0x25]
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
shr eax, 0x1b
test al, 1
jne 0x100d929f
pop edi
pop esi
pop ebp
mov eax, 0x25
pop ebx
add esp, 0x68
ret
test edi, 0x9c0000
jne 0x100d9156
cmp dword [esp + 0x3c], 0
je 0x100d9156
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x68
ret
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
cmp ecx, 2
ja 0x100dab75
mov dword [esp + 4], eax
jmp 0x100d8920
mov eax, 5
ret