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

Disassembly:
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
sub esp, 0x68
cmp ecx, 2
jbe 0x100f2a38
mov eax, 5
add esp, 0x68
ret
cmp eax, 1
jne 0x100f2a4b
mov dword [esp + 8], 0x10185f90
mov dword [esp + 0x10], eax
jmp 0x100f2a5b
mov dword [esp + 8], 0x10186018
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 0x100f2a78
mov eax, 3
add esp, 0x68
ret
lea eax, [eax + eax*2]
push ebx
mov ebx, dword [esp + 0x78]
lea eax, [eax*4 + 0x1017b818]
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 + 0x1017fd68]
je 0x100f2b35
mov esi, ecx
and esi, 0x2000
je 0x100f2ae7
test eax, 0x4000
jne 0x100f2acb
test ecx, 0x30000
je 0x100f2ada
cmp ebp, 1
jb 0x100f2ada
mov edx, dword [ebx]
and dl, 7
cmp dl, 2
je 0x100f2ae7
pop edi
pop esi
pop ebp
mov eax, 0x1c
pop ebx
add esp, 0x68
ret
mov edx, ecx
and edx, 0x30000
je 0x100f2b35
cmp esi, edi
je 0x100f2b4b
cmp edx, 0x30000
je 0x100f2b4b
test ecx, 0x10000
je 0x100f2b19
test eax, 0x8000
jne 0x100f2b19
pop edi
pop esi
pop ebp
mov eax, 0x1d
pop ebx
add esp, 0x68
ret
test ecx, 0x20000
je 0x100f2b35
test eax, 0x10000
jne 0x100f2b35
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 0x100f2b83
cmp edx, 0xc000
jne 0x100f2b58
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x68
ret
test ecx, 0x4000
je 0x100f2b67
test eax, 0x1000
je 0x100f2b76
test ecx, 0x8000
je 0x100f2b83
test eax, 0x2000
jne 0x100f2b83
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 0x100f2f6f
mov edi, ebx
lea eax, [esp + 0x4f]
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], eax
jmp 0x100f2bb0
mov eax, dword [edi]
mov ecx, eax
and ecx, 7
je 0x100f2fd3
xor ebp, ebp
add ecx, 0xffffffff
xor ebx, ebx
cmp ecx, 3
mov dword [esp + 0x24], ebp
ja case.default.0x100f2bd1
jmp dword [ecx*4 + 0x100f33ac]
shr eax, 3
and eax, 0x1f
mov esi, eax
cmp esi, 0x16
jae 0x100f2f92
mov eax, dword [esi*4 + 0x10185f10]
test eax, eax
je 0x100f2f92
mov ecx, dword [edi + 4]
cmp ecx, 0x100
jae 0x100f2c29
cmp ecx, 0x20
jae 0x100f2f9f
mov ebx, 1
shl ebx, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + esi*4], ebx
je 0x100f2f9f
or dword [esp + 0x7c], ebx
jmp 0x100f2f32
or ebx, 0xffffffff
jmp 0x100f2f32
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 0x100f2fac
test edi, edi
mov edx, dword [ecx + 0xc]
je 0x100f2cb2
shr eax, 0x10
test al, 1
jne 0x100f2c84
mov ecx, edi
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + 0x80], eax
je 0x100f2fb9
cmp edx, 0x100
jae 0x100f2c9b
mov ebx, 1
mov ecx, edx
shl ebx, cl
or dword [esp + 0x7c], ebx
jmp 0x100f2c9e
or ebx, 0xffffffff
test esi, esi
jne 0x100f2d05
mov edx, dword [esp + 0x14]
cmp dword [edx + 8], esi
jne 0x100f2cfd
mov ebp, 0x800
jmp 0x100f2cfd
cmp dword [esp + 0x20], 1
mov eax, dword [ecx + 8]
jne 0x100f2cfd
mov ecx, eax
add ecx, 0x80000000
mov ebp, edx
adc ebp, 0
mov dword [esp + 0x44], ebp
jne 0x100f2cd4
cmp ecx, 0xffffffff
jbe 0x100f2cf9
test edx, edx
jl 0x100f2fb9
jg 0x100f2ce6
test eax, eax
jb 0x100f2fb9
test edx, edx
jg 0x100f2fb9
jl 0x100f2cf9
cmp eax, 0xffffffff
ja 0x100f2fb9
mov ebp, dword [esp + 0x24]
test esi, esi
je 0x100f2d88
mov ecx, esi
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
test dword [ecx + 0x84], eax
je 0x100f2fb9
cmp esi, 9
jne 0x100f2d2d
mov eax, 0x20000
or ebp, 0x11
jmp 0x100f2d5a
cmp esi, 0xa
jne 0x100f2d3c
mov eax, 0x20000
or ebp, 0x22
jmp 0x100f2d5a
cmp esi, 0xb
jne 0x100f2d4b
mov eax, 0x20000
or ebp, 0x44
jmp 0x100f2d5a
test edi, edi
mov eax, 0x10000
je 0x100f2d5a
or ebp, 0x4000
cmp edi, 0xe
jne 0x100f2d6a
test eax, 0x20000
jne 0x100f2fb9
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 4]
cmp ecx, 0x100
jae 0x100f2d84
mov edx, 1
shl edx, cl
or dword [esp + 0x7c], edx
xor ebx, ebx
jmp 0x100f2d8d
mov eax, 0x10000
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + 3]
cmp ecx, 0x40
ja case.0x100f2da5.3
movzx edx, byte [ecx + 0x100f33e8]
jmp dword [edx*4 + 0x100f33bc]
or ebp, 0x8000
jmp 0x100f2f32
or ebp, 1
jmp 0x100f2f32
or ebp, 2
jmp 0x100f2f32
or ebp, 4
jmp 0x100f2f32
or ebp, 8
jmp 0x100f2f32
or ebp, 0x10
jmp 0x100f2f32
or ebp, 0x20
jmp 0x100f2f32
or ebp, 0x40
jmp 0x100f2f32
or ebp, 0x80
jmp 0x100f2f32
or ebp, 0x100
jmp 0x100f2f32
mov eax, dword [edi + 0xc]
test eax, eax
mov ecx, dword [edi + 8]
jl 0x100f2edd
jg 0x100f2e1d
test ecx, ecx
jb 0x100f2edd
test eax, eax
ja 0x100f2ec1
jb 0x100f2e2c
cmp ecx, 0xf
ja 0x100f2e36
mov eax, 0x7fc0000
jmp 0x100f2f32
test eax, eax
ja 0x100f2ec1
jb 0x100f2e45
cmp ecx, 0x7f
ja 0x100f2e4f
mov eax, 0x7f80000
jmp 0x100f2f32
test eax, eax
ja 0x100f2ec1
jb 0x100f2e5d
cmp ecx, 0xff
ja 0x100f2e67
mov eax, 0x7f00000
jmp 0x100f2f32
test eax, eax
ja 0x100f2ec1
jb 0x100f2e75
cmp ecx, 0x7fff
ja 0x100f2e7f
mov eax, 0x7e00000
jmp 0x100f2f32
test eax, eax
ja 0x100f2ec1
jb 0x100f2e8d
cmp ecx, 0xffff
ja 0x100f2e97
mov eax, 0x7c00000
jmp 0x100f2f32
test eax, eax
ja 0x100f2ec1
jb 0x100f2ea5
cmp ecx, 0x7fffffff
ja 0x100f2eaf
mov eax, 0x7800000
jmp 0x100f2f32
test eax, eax
ja 0x100f2ec1
jb 0x100f2eba
cmp ecx, 0xffffffff
ja 0x100f2ec1
mov eax, 0x7000000
jmp 0x100f2f32
cmp eax, 0x7fffffff
ja 0x100f2ed6
jb 0x100f2ecf
cmp ecx, 0xffffffff
ja 0x100f2ed6
mov eax, 0x6000000
jmp 0x100f2f32
mov eax, 0x4000000
jmp 0x100f2f32
not ecx
add ecx, 1
not eax
adc eax, 0
test eax, eax
ja 0x100f2f26
jb 0x100f2ef5
cmp ecx, 0x80
ja 0x100f2efc
mov eax, 0x2a80000
jmp 0x100f2f32
test eax, eax
ja 0x100f2f26
jb 0x100f2f0a
cmp ecx, 0x8000
ja 0x100f2f11
mov eax, 0x2a00000
jmp 0x100f2f32
test eax, eax
ja 0x100f2f26
jb 0x100f2f1f
cmp ecx, 0x80000000
ja 0x100f2f26
mov eax, 0x2800000
jmp 0x100f2f32
mov eax, 0x2000000
jmp 0x100f2f32
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 0x100f2bb0
cmp dword [esp + 0x20], 1
jne 0x100f3019
test byte [esp + 0x1c], 0x10
je 0x100f3037
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 0x100f2f6f
sub ebp, 1
cmp ebp, edx
mov dword [esp + 0x88], ebp
jbe 0x100f2f6f
mov eax, ebp
shl eax, 4
add eax, dword [esp + 0x84]
test byte [eax], 7
jne case.default.0x100f2bd1
sub ebp, 1
sub eax, 0x10
cmp ebp, edx
ja 0x100f2ff1
mov dword [esp + 0x88], ebp
jmp 0x100f2f6f
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 0x68
ret
test byte [esp + 0x1c], 2
je 0x100f3037
test dword [esp + 0x7c], 0xffffff00
je 0x100f3037
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 + 0x1017fd70]
mov ecx, eax
shr ecx, 8
shr eax, 0x12
and ecx, 0x3ff
lea ecx, [ecx*8 + 0x10184d90]
and eax, 0xf
lea eax, [ecx + eax*8]
cmp ecx, eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], eax
je 0x100f3263
mov edx, ecx
add edx, 2
mov byte [esp + 0x13], 0
mov dword [esp + 0x14], edx
jmp 0x100f3080
mov eax, dword [esp + 0x18]
movzx eax, byte [eax]
mov ecx, eax
shr ecx, 3
and ecx, dword [esp + 0x20]
test cl, 3
je 0x100f321e
mov edx, dword [esp + 0x88]
mov ebx, eax
and ebx, 7
xor ebp, ebp
cmp ebx, edx
mov byte [esp + 0x7c], 0
jne 0x100f313c
test edx, edx
jbe 0x100f3209
lea esi, [esp + 0x4f]
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + ebp]
mov ecx, dword [esi - 7]
mov edx, dword [eax*8 + 0x10184600]
test ecx, edx
lea eax, [eax*8 + 0x10184600]
jne 0x100f30fc
test ecx, 0x7fc0000
je 0x100f3209
test edx, 0x7fc0000
je 0x100f3209
mov byte [esp + 0x7c], 1
jmp 0x100f3128
movzx edx, word [esi - 3]
test edx, edx
je 0x100f3110
movzx edi, word [eax + 4]
test edx, edi
je 0x100f3209
test ecx, 0x7fff
je 0x100f3128
movzx eax, byte [eax + 7]
test eax, eax
je 0x100f3128
test byte [esi], al
je 0x100f3209
add ebp, 1
add esi, 8
cmp ebp, dword [esp + 0x88]
jb 0x100f30c0
jmp 0x100f3209
shr eax, 5
mov ecx, ebx
sub ecx, eax
cmp ecx, edx
jne 0x100f3209
xor ecx, ecx
xor ebp, ebp
test edx, edx
jbe 0x100f3209
lea edi, [esp + 0x48]
mov dword [esp + 0x30], edi
nop
cmp ecx, ebx
jae 0x100f3209
mov edx, dword [esp + 0x14]
movzx eax, byte [ecx + edx]
test dword [eax*8 + 0x10184600], 0x80000000
lea eax, [eax*8 + 0x10184600]
je 0x100f31a7
add ecx, 1
cmp ecx, ebx
jae 0x100f3209
mov eax, dword [esp + 0x14]
movzx eax, byte [ecx + eax]
test dword [eax*8 + 0x10184600], 0x80000000
lea eax, [eax*8 + 0x10184600]
jne 0x100f3184
mov esi, dword [edi]
mov edx, dword [eax]
test esi, edx
jne 0x100f31c6
test esi, 0x7fc0000
je 0x100f3209
test edx, 0x7fc0000
je 0x100f3209
mov byte [esp + 0x7c], 1
jmp 0x100f31ef
movzx edx, word [edi + 4]
test edx, edx
je 0x100f31da
movzx edi, word [eax + 4]
test edx, edi
je 0x100f3209
mov edi, dword [esp + 0x30]
test esi, 0x7fff
je 0x100f31ef
movzx eax, byte [eax + 7]
test eax, eax
je 0x100f31ef
test byte [edi + 7], al
je 0x100f3209
add ebp, 1
add edi, 8
add ecx, 1
cmp ebp, dword [esp + 0x88]
mov dword [esp + 0x30], edi
jb 0x100f3160
cmp ebp, dword [esp + 0x88]
jne 0x100f321e
mov al, byte [esp + 0x7c]
test al, al
je 0x100f324c
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 0x100f3080
cmp byte [esp + 0x13], 0
je 0x100f3256
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 0x100f3263
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 0x100f3281
test edi, 0x9c0000
je 0x100f339f
mov eax, dword [esp + 0x38]
mov eax, dword [eax*4 + 0x1017fd68]
mov edx, eax
shr edx, 0x14
test dl, 1
je 0x100f3388
test ecx, ecx
je 0x100f32cd
and ecx, 0xf8
cmp cl, 0x90
je 0x100f32b6
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 0x100f32cd
pop edi
pop esi
pop ebp
mov eax, 0x22
pop ebx
add esp, 0x68
ret
test edi, 0x800000
je 0x100f32ec
mov edx, eax
shr edx, 0x19
test dl, 1
jne 0x100f32ec
pop edi
pop esi
pop ebp
mov eax, 0x23
pop ebx
add esp, 0x68
ret
test edi, 0x100000
mov esi, dword [esp + 0x28]
je 0x100f332f
test esi, esi
je 0x100f3322
movzx ecx, byte [esi + 3]
test ecx, ecx
je 0x100f332f
mov edx, eax
shr edx, 0x1c
test dl, 1
je 0x100f3313
cmp ecx, 4
jne 0x100f3322
mov edx, eax
shr edx, 0x1d
test dl, 1
je 0x100f332f
cmp ecx, 8
je 0x100f332f
pop edi
pop esi
pop ebp
mov eax, 0x24
pop ebx
add esp, 0x68
ret
test edi, 0xc0000
je 0x100f339f
test esi, esi
jne 0x100f337b
test edi, 0x40000
je 0x100f3374
mov ecx, eax
shr ecx, 0x1a
test cl, 1
je 0x100f337b
test eax, 0x30000000
je 0x100f339f
mov eax, dword [0x101860dc]
mov ecx, dword [esp + 0x84]
cmp dword [ecx], eax
je 0x100f339f
cmp dword [ecx + 0x10], eax
je 0x100f339f
pop edi
lea eax, [esi + 0x25]
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
shr eax, 0x1b
test al, 1
jne 0x100f339f
pop edi
pop esi
pop ebp
mov eax, 0x25
pop ebx
add esp, 0x68
ret
test edi, 0x9c0000
jne 0x100f3256
cmp dword [esp + 0x3c], 0
je 0x100f3256
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 0x100f4c65
mov dword [esp + 4], eax
jmp 0x100f2a20
mov eax, 5
ret