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

Disassembly:
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
sub esp, 0x68
cmp ecx, 2
jbe 0x100fc078
mov eax, 5
add esp, 0x68
ret
cmp eax, 1
jne 0x100fc08b
mov dword [esp + 8], 0x1018e4e8
mov dword [esp + 0x10], eax
jmp 0x100fc09b
mov dword [esp + 8], 0x1018e570
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 0x100fc0b8
mov eax, 3
add esp, 0x68
ret
lea eax, [eax + eax*2]
push ebx
mov ebx, dword [esp + 0x78]
lea eax, [eax*4 + 0x10183d70]
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 + 0x101882c0]
je 0x100fc175
mov esi, ecx
and esi, 0x2000
je 0x100fc127
test eax, 0x4000
jne 0x100fc10b
test ecx, 0x30000
je 0x100fc11a
cmp ebp, 1
jb 0x100fc11a
mov edx, dword [ebx]
and dl, 7
cmp dl, 2
je 0x100fc127
pop edi
pop esi
pop ebp
mov eax, 0x1c
pop ebx
add esp, 0x68
ret
mov edx, ecx
and edx, 0x30000
je 0x100fc175
cmp esi, edi
je 0x100fc18b
cmp edx, 0x30000
je 0x100fc18b
test ecx, 0x10000
je 0x100fc159
test eax, 0x8000
jne 0x100fc159
pop edi
pop esi
pop ebp
mov eax, 0x1d
pop ebx
add esp, 0x68
ret
test ecx, 0x20000
je 0x100fc175
test eax, 0x10000
jne 0x100fc175
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 0x100fc1c3
cmp edx, 0xc000
jne 0x100fc198
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x68
ret
test ecx, 0x4000
je 0x100fc1a7
test eax, 0x1000
je 0x100fc1b6
test ecx, 0x8000
je 0x100fc1c3
test eax, 0x2000
jne 0x100fc1c3
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 0x100fc5af
mov edi, ebx
lea eax, [esp + 0x4f]
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], eax
jmp 0x100fc1f0
mov eax, dword [edi]
mov ecx, eax
and ecx, 7
je 0x100fc613
xor ebp, ebp
add ecx, 0xffffffff
xor ebx, ebx
cmp ecx, 3
mov dword [esp + 0x24], ebp
ja case.default.0x100fc211
jmp dword [ecx*4 + 0x100fc9ec]
shr eax, 3
and eax, 0x1f
mov esi, eax
cmp esi, 0x16
jae 0x100fc5d2
mov eax, dword [esi*4 + 0x1018e468]
test eax, eax
je 0x100fc5d2
mov ecx, dword [edi + 4]
cmp ecx, 0x100
jae 0x100fc269
cmp ecx, 0x20
jae 0x100fc5df
mov ebx, 1
shl ebx, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + esi*4], ebx
je 0x100fc5df
or dword [esp + 0x7c], ebx
jmp 0x100fc572
or ebx, 0xffffffff
jmp 0x100fc572
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 0x100fc5ec
test edi, edi
mov edx, dword [ecx + 0xc]
je 0x100fc2f2
shr eax, 0x10
test al, 1
jne 0x100fc2c4
mov ecx, edi
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + 0x80], eax
je 0x100fc5f9
cmp edx, 0x100
jae 0x100fc2db
mov ebx, 1
mov ecx, edx
shl ebx, cl
or dword [esp + 0x7c], ebx
jmp 0x100fc2de
or ebx, 0xffffffff
test esi, esi
jne 0x100fc345
mov edx, dword [esp + 0x14]
cmp dword [edx + 8], esi
jne 0x100fc33d
mov ebp, 0x800
jmp 0x100fc33d
cmp dword [esp + 0x20], 1
mov eax, dword [ecx + 8]
jne 0x100fc33d
mov ecx, eax
add ecx, 0x80000000
mov ebp, edx
adc ebp, 0
mov dword [esp + 0x44], ebp
jne 0x100fc314
cmp ecx, 0xffffffff
jbe 0x100fc339
test edx, edx
jl 0x100fc5f9
jg 0x100fc326
test eax, eax
jb 0x100fc5f9
test edx, edx
jg 0x100fc5f9
jl 0x100fc339
cmp eax, 0xffffffff
ja 0x100fc5f9
mov ebp, dword [esp + 0x24]
test esi, esi
je 0x100fc3c8
mov ecx, esi
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + 0x84], eax
je 0x100fc5f9
cmp esi, 9
jne 0x100fc36d
mov eax, 0x20000
or ebp, 0x11
jmp 0x100fc39a
cmp esi, 0xa
jne 0x100fc37c
mov eax, 0x20000
or ebp, 0x22
jmp 0x100fc39a
cmp esi, 0xb
jne 0x100fc38b
mov eax, 0x20000
or ebp, 0x44
jmp 0x100fc39a
test edi, edi
mov eax, 0x10000
je 0x100fc39a
or ebp, 0x4000
cmp edi, 0xe
jne 0x100fc3aa
test eax, 0x20000
jne 0x100fc5f9
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 4]
cmp ecx, 0x100
jae 0x100fc3c4
mov edx, 1
shl edx, cl
or dword [esp + 0x7c], edx
xor ebx, ebx
jmp 0x100fc3cd
mov eax, 0x10000
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + 3]
cmp ecx, 0x40
ja case.0x100fc3e5.3
movzx edx, byte [ecx + 0x100fca28]
jmp dword [edx*4 + 0x100fc9fc]
or ebp, 0x8000
jmp 0x100fc572
or ebp, 1
jmp 0x100fc572
or ebp, 2
jmp 0x100fc572
or ebp, 4
jmp 0x100fc572
or ebp, 8
jmp 0x100fc572
or ebp, 0x10
jmp 0x100fc572
or ebp, 0x20
jmp 0x100fc572
or ebp, 0x40
jmp 0x100fc572
or ebp, 0x80
jmp 0x100fc572
or ebp, 0x100
jmp 0x100fc572
mov eax, dword [edi + 0xc]
test eax, eax
mov ecx, dword [edi + 8]
jl 0x100fc51d
jg 0x100fc45d
test ecx, ecx
jb 0x100fc51d
test eax, eax
ja 0x100fc501
jb 0x100fc46c
cmp ecx, 0xf
ja 0x100fc476
mov eax, 0x7fc0000
jmp 0x100fc572
test eax, eax
ja 0x100fc501
jb 0x100fc485
cmp ecx, 0x7f
ja 0x100fc48f
mov eax, 0x7f80000
jmp 0x100fc572
test eax, eax
ja 0x100fc501
jb 0x100fc49d
cmp ecx, 0xff
ja 0x100fc4a7
mov eax, 0x7f00000
jmp 0x100fc572
test eax, eax
ja 0x100fc501
jb 0x100fc4b5
cmp ecx, 0x7fff
ja 0x100fc4bf
mov eax, 0x7e00000
jmp 0x100fc572
test eax, eax
ja 0x100fc501
jb 0x100fc4cd
cmp ecx, 0xffff
ja 0x100fc4d7
mov eax, 0x7c00000
jmp 0x100fc572
test eax, eax
ja 0x100fc501
jb 0x100fc4e5
cmp ecx, 0x7fffffff
ja 0x100fc4ef
mov eax, 0x7800000
jmp 0x100fc572
test eax, eax
ja 0x100fc501
jb 0x100fc4fa
cmp ecx, 0xffffffff
ja 0x100fc501
mov eax, 0x7000000
jmp 0x100fc572
cmp eax, 0x7fffffff
ja 0x100fc516
jb 0x100fc50f
cmp ecx, 0xffffffff
ja 0x100fc516
mov eax, 0x6000000
jmp 0x100fc572
mov eax, 0x4000000
jmp 0x100fc572
not ecx
add ecx, 1
not eax
adc eax, 0
test eax, eax
ja 0x100fc566
jb 0x100fc535
cmp ecx, 0x80
ja 0x100fc53c
mov eax, 0x2a80000
jmp 0x100fc572
test eax, eax
ja 0x100fc566
jb 0x100fc54a
cmp ecx, 0x8000
ja 0x100fc551
mov eax, 0x2a00000
jmp 0x100fc572
test eax, eax
ja 0x100fc566
jb 0x100fc55f
cmp ecx, 0x80000000
ja 0x100fc566
mov eax, 0x2800000
jmp 0x100fc572
mov eax, 0x2000000
jmp 0x100fc572
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 0x100fc1f0
cmp dword [esp + 0x20], 1
jne 0x100fc659
test byte [esp + 0x1c], 0x10
je 0x100fc677
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 0x100fc5af
sub ebp, 1
cmp ebp, edx
mov dword [esp + 0x88], ebp
jbe 0x100fc5af
mov eax, ebp
shl eax, 4
add eax, dword [esp + 0x84]
test byte [eax], 7
jne case.default.0x100fc211
sub ebp, 1
sub eax, 0x10
cmp ebp, edx
ja 0x100fc631
mov dword [esp + 0x88], ebp
jmp 0x100fc5af
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 0x68
ret
test byte [esp + 0x1c], 2
je 0x100fc677
test dword [esp + 0x7c], 0xffffff00
je 0x100fc677
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 + 0x101882c8]
mov ecx, eax
shr ecx, 8
shr eax, 0x12
and ecx, 0x3ff
lea ecx, [ecx*8 + 0x1018d2e8]
and eax, 0xf
lea eax, [ecx + eax*8]
cmp ecx, eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], eax
je 0x100fc8a3
mov edx, ecx
add edx, 2
mov byte [esp + 0x13], 0
mov dword [esp + 0x14], edx
jmp 0x100fc6c0
mov eax, dword [esp + 0x18]
movzx eax, byte [eax]
mov ecx, eax
shr ecx, 3
and ecx, dword [esp + 0x20]
test cl, 3
je 0x100fc85e
mov edx, dword [esp + 0x88]
mov ebx, eax
and ebx, 7
xor ebp, ebp
cmp ebx, edx
mov byte [esp + 0x7c], 0
jne 0x100fc77c
test edx, edx
jbe 0x100fc849
lea esi, [esp + 0x4f]
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + ebp]
mov ecx, dword [esi - 7]
mov edx, dword [eax*8 + 0x1018cb58]
test ecx, edx
lea eax, [eax*8 + 0x1018cb58]
jne 0x100fc73c
test ecx, 0x7fc0000
je 0x100fc849
test edx, 0x7fc0000
je 0x100fc849
mov byte [esp + 0x7c], 1
jmp 0x100fc768
movzx edx, word [esi - 3]
test edx, edx
je 0x100fc750
movzx edi, word [eax + 4]
test edx, edi
je 0x100fc849
test ecx, 0x7fff
je 0x100fc768
movzx eax, byte [eax + 7]
test eax, eax
je 0x100fc768
test byte [esi], al
je 0x100fc849
add ebp, 1
add esi, 8
cmp ebp, dword [esp + 0x88]
jb 0x100fc700
jmp 0x100fc849
shr eax, 5
mov ecx, ebx
sub ecx, eax
cmp ecx, edx
jne 0x100fc849
xor ecx, ecx
xor ebp, ebp
test edx, edx
jbe 0x100fc849
lea edi, [esp + 0x48]
mov dword [esp + 0x30], edi
nop
cmp ecx, ebx
jae 0x100fc849
mov edx, dword [esp + 0x14]
movzx eax, byte [ecx + edx]
test dword [eax*8 + 0x1018cb58], 0x80000000
lea eax, [eax*8 + 0x1018cb58]
je 0x100fc7e7
add ecx, 1
cmp ecx, ebx
jae 0x100fc849
mov eax, dword [esp + 0x14]
movzx eax, byte [ecx + eax]
test dword [eax*8 + 0x1018cb58], 0x80000000
lea eax, [eax*8 + 0x1018cb58]
jne 0x100fc7c4
mov esi, dword [edi]
mov edx, dword [eax]
test esi, edx
jne 0x100fc806
test esi, 0x7fc0000
je 0x100fc849
test edx, 0x7fc0000
je 0x100fc849
mov byte [esp + 0x7c], 1
jmp 0x100fc82f
movzx edx, word [edi + 4]
test edx, edx
je 0x100fc81a
movzx edi, word [eax + 4]
test edx, edi
je 0x100fc849
mov edi, dword [esp + 0x30]
test esi, 0x7fff
je 0x100fc82f
movzx eax, byte [eax + 7]
test eax, eax
je 0x100fc82f
test byte [edi + 7], al
je 0x100fc849
add ebp, 1
add edi, 8
add ecx, 1
cmp ebp, dword [esp + 0x88]
mov dword [esp + 0x30], edi
jb 0x100fc7a0
cmp ebp, dword [esp + 0x88]
jne 0x100fc85e
mov al, byte [esp + 0x7c]
test al, al
je 0x100fc88c
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 0x100fc6c0
cmp byte [esp + 0x13], 0
je 0x100fc896
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 0x100fc8a3
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 0x100fc8c1
test edi, 0x9c0000
je 0x100fc9df
mov eax, dword [esp + 0x38]
mov eax, dword [eax*4 + 0x101882c0]
mov edx, eax
shr edx, 0x14
test dl, 1
je 0x100fc9c8
test ecx, ecx
je 0x100fc90d
and ecx, 0xf8
cmp cl, 0x90
je 0x100fc8f6
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 0x100fc90d
pop edi
pop esi
pop ebp
mov eax, 0x22
pop ebx
add esp, 0x68
ret
test edi, 0x800000
je 0x100fc92c
mov edx, eax
shr edx, 0x19
test dl, 1
jne 0x100fc92c
pop edi
pop esi
pop ebp
mov eax, 0x23
pop ebx
add esp, 0x68
ret
test edi, 0x100000
mov esi, dword [esp + 0x28]
je 0x100fc96f
test esi, esi
je 0x100fc962
movzx ecx, byte [esi + 3]
test ecx, ecx
je 0x100fc96f
mov edx, eax
shr edx, 0x1c
test dl, 1
je 0x100fc953
cmp ecx, 4
jne 0x100fc962
mov edx, eax
shr edx, 0x1d
test dl, 1
je 0x100fc96f
cmp ecx, 8
je 0x100fc96f
pop edi
pop esi
pop ebp
mov eax, 0x24
pop ebx
add esp, 0x68
ret
test edi, 0xc0000
je 0x100fc9df
test esi, esi
jne 0x100fc9bb
test edi, 0x40000
je 0x100fc9b4
mov ecx, eax
shr ecx, 0x1a
test cl, 1
je 0x100fc9bb
test eax, 0x30000000
je 0x100fc9df
mov eax, dword [0x1018e634]
mov ecx, dword [esp + 0x84]
cmp dword [ecx], eax
je 0x100fc9df
cmp dword [ecx + 0x10], eax
je 0x100fc9df
pop edi
lea eax, [esi + 0x25]
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
shr eax, 0x1b
test al, 1
jne 0x100fc9df
pop edi
pop esi
pop ebp
mov eax, 0x25
pop ebx
add esp, 0x68
ret
test edi, 0x9c0000
jne 0x100fc896
cmp dword [esp + 0x3c], 0
je 0x100fc896
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 0x100fe2a5
mov dword [esp + 4], eax
jmp 0x100fc060
mov eax, 5
ret