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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x3bc
mov ebp, dword [esp + 0x3d0]
mov ebx, ecx
call fcn.1003ddac
xor esi, esi
push esi
push eax
call fcn.1003b692
add esp, 8
mov dword [esp + 0x14], eax
call fcn.1003ddac
push esi
push eax
call fcn.1003b692
add esp, 8
lea esi, [esp + 0x20]
mov dword [esp + 0x18], eax
mov ecx, esi
call fcn.100b8cf2
lea edi, [esp + 0x3b4]
mov ecx, edi
call fcn.100b8cf2
mov eax, dword [ebx + 0x468]
mov dword [esp + 0xc], ebx
mov al, byte [eax + ebp + 0x30]
cmp al, 0x11
jle 0x100f1da8
mov ecx, eax
add cl, 0xee
cmp cl, 0x13
ja case.default.0x100f19f1
movzx eax, cl
jmp dword [eax*4 + 0x101e25b4]
cmp al, 1
je 0x100f35cd
cmp al, 5
je 0x100f3821
cmp al, 0xf
jne case.0x100d78e9.470
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
mov eax, dword [esp + 0x3e4]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov ebp, esi
mov esi, eax
push 2
call fcn.1003c0ec
sub esp, 8
mov dword [esp + 8], esi
lea esi, [esp + 0x2b8]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.1003dff1
add esp, 0xc
mov ecx, dword [esp + 0x3d4]
call fcn.100b1880
lea ebx, [esp + 0x2b0]
push dword [esi]
push eax
push ebx
call fcn.10042f27
add esp, 0xc
mov ecx, ebp
push dword [ebx]
call fcn.100b18a2
mov eax, dword [esp + 0x3d0]
lea esi, [eax*4 + 0x17ea0]
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0x24]
call fcn.100b1880
lea ebp, [esp + 0x2a4]
push esi
push eax
push ebp
call fcn.10042ef9
add esp, 0xc
xor ebx, ebx
lea esi, [esp + 0x3ac]
inc ebx
mov ecx, esi
push ebx
push dword [ebp]
call fcn.100a7a46
mov ebp, dword [esi + 4]
mov ecx, esi
call fcn.100b1948
mov esi, eax
call fcn.1003b794
push ebp
xor ecx, ecx
push ecx
push eax
push esi
call fcn.1003be3a
add esp, 0x10
lea ecx, [esp + 0x20]
mov esi, eax
call fcn.100b1880
lea ebp, [esp + 0x2a8]
push esi
push eax
push ebp
call fcn.10042f27
add esp, 0xc
mov ecx, edi
push dword [ebp]
call fcn.100b18a2
lea esi, [esp + 0x3a4]
mov ecx, esi
push ebx
push edi
call fcn.100a77f4
mov edi, dword [esi + 4]
mov ecx, esi
call fcn.100b1948
mov esi, eax
call fcn.1003b794
push edi
xor ebp, ebp
push ebp
push eax
push esi
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x39c]
mov esi, eax
mov ecx, edi
push ebx
lea eax, [esp + 0x24]
push eax
call fcn.100a77f4
mov ebx, dword [edi + 4]
mov ecx, edi
call fcn.100b1948
mov edi, eax
call fcn.1003b794
push ebx
push ebp
push eax
push edi
call fcn.1003be3a
add esp, 0x10
mov edi, esp
mov ecx, edi
push esi
push eax
call fcn.1003fe7e
lea esi, [esp + 0x2a0]
push edi
push esi
call fcn.10102d98
add esp, 8
lea ecx, [esp + 0x14]
lea eax, [esp + 8]
mov ebx, ecx
push dword [esi]
push eax
call fcn.1003defe
mov esi, esp
mov ecx, esi
push 0xfffff800
call fcn.1003d206
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
xor edi, edi
push eax
push dword [esi]
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
push edi
push edi
push eax
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
lea ebx, [esp + 0x29c]
push esi
push eax
push ebx
call fcn.1003c798
add esp, 0xc
mov ebp, dword [esp + 0x3dc]
mov ecx, ebp
push dword [ebx]
lea ebp, [esp + 0xc]
push ebp
call fcn.1003defe
mov esi, esp
mov ecx, esi
push 0x7e0
call fcn.1003d206
call fcn.1003ddac
push edi
push edi
push eax
push dword [esi]
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
push edi
push edi
push eax
lea eax, [esp + 0x20]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
lea ebx, [esp + 0x294]
push esi
push eax
push ebx
call fcn.1003c798
add esp, 0xc
lea esi, [esp + 0x298]
push 5
push dword [ebx]
push esi
call fcn.1003d2db
add esp, 0xc
mov eax, dword [esp + 0x3dc]
lea ecx, [eax + 4]
push dword [esi]
push ebp
call fcn.1003defe
mov ebp, esp
mov ecx, ebp
push 0x1f
call fcn.1003d206
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
xor edi, edi
push eax
push dword [ebp]
call fcn.1003be3a
add esp, 0x10
mov ebx, eax
call fcn.1003ddac
push edi
push edi
push eax
lea eax, [esp + 0x20]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x28c]
push ebx
push eax
push edi
call fcn.1003c798
add esp, 0xc
lea ebx, [esp + 0x290]
push 0xb
push dword [edi]
push ebx
call fcn.1003d2db
add esp, 0xc
mov esi, dword [esp + 0x3dc]
lea ecx, [esi + 8]
push dword [ebx]
mov ebx, dword [esp + 0x10]
lea edi, [esp + 0xc]
push edi
call fcn.1003defe
mov ecx, ebp
push 0xffffffffffffffff
call fcn.1003d206
lea ecx, [esi + 0xc]
jmp fcn.100f35c6
cmp al, 0x2d
jne case.0x100d78e9.470
mov ecx, dword [esp + 0x3d4]
call fcn.100b1880
mov ecx, esi
push eax
call fcn.100b18a2
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
mov eax, dword [esp + 0x3e4]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov ebp, esi
mov esi, eax
mov eax, 8
push eax
call fcn.1003c0ec
add esp, 4
lea edi, [esp + 0xc8]
push esi
push eax
push edi
call fcn.1003dff1
add esp, 0xc
mov ecx, ebp
call fcn.100b1880
lea ebx, [esp + 0xcc]
push dword [edi]
push eax
push ebx
call fcn.10042f27
add esp, 0xc
xor eax, eax
lea esi, [esp + 0x2ec]
inc eax
mov ecx, esi
push eax
push dword [ebx]
call fcn.100bb686
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b19e4
mov ecx, dword [esp + 0x3dc]
mov edx, esp
lea esi, [esp + 8]
mov dword [edx + 4], ebx
mov dword [edx], eax
mov ecx, ecx
push edx
push esi
call fcn.1003df62
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
mov eax, dword [esp + 0x3e4]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov edi, 8
mov esi, eax
push edi
call fcn.1003c0ec
add esp, 4
lea ebx, [esp + 0xbc]
push esi
push eax
push ebx
call fcn.1003dff1
add esp, 0xc
mov ecx, ebp
call fcn.100b1880
lea esi, [esp + 0xc0]
push dword [ebx]
push eax
push esi
call fcn.10042f27
add esp, 0xc
lea ebx, [esp + 0xc4]
push edi
push dword [esi]
push ebx
call fcn.10042ef9
add esp, 0xc
xor edi, edi
lea esi, [esp + 0x2e4]
inc edi
mov ecx, esi
push edi
push dword [ebx]
call fcn.100bb686
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b19e4
mov edx, esp
mov dword [edx + 4], ebx
mov dword [edx], eax
mov eax, dword [esp + 0x3dc]
lea ecx, [eax + 4]
mov dword [esp + 0x10], ecx
push edx
lea eax, [esp + 0xc]
push eax
call fcn.1003df62
mov eax, dword [esp + 0x3d0]
lea esi, [eax*4 + 0x17ea0]
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0x24]
call fcn.100b1880
lea ebx, [esp + 0xb8]
push esi
push eax
push ebx
call fcn.10042ef9
add esp, 0xc
lea esi, [esp + 0x2dc]
mov ecx, esi
push edi
push dword [ebx]
call fcn.100a7a46
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b1948
mov esi, eax
call fcn.1003b794
push ebx
xor ecx, ecx
push ecx
push eax
push esi
call fcn.1003be3a
add esp, 0x10
push eax
push ebp
lea eax, [esp + 8]
push eax
call fcn.10042fa0
add esp, 0xc
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
mov edi, dword [esp + 0x3e4]
push dword [edi]
call fcn.1003be3a
add esp, 0x10
mov esi, eax
mov eax, 8
push eax
call fcn.1003c0ec
add esp, 4
lea ebx, [esp + 0xb0]
push esi
push eax
push ebx
call fcn.1003dff1
add esp, 0xc
mov ecx, ebp
call fcn.100b1880
lea ebp, [esp + 0xb4]
push dword [ebx]
push eax
push ebp
call fcn.10042f27
add esp, 0xc
xor eax, eax
lea esi, [esp + 0x2d4]
inc eax
mov ecx, esi
push eax
push dword [ebp]
call fcn.100bb686
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b19e4
mov edx, esp
mov dword [edx + 4], ebx
mov dword [edx], eax
mov eax, dword [esp + 0x3dc]
lea ecx, [eax + 8]
mov dword [esp + 0x1c], ecx
push edx
lea eax, [esp + 0xc]
push eax
call fcn.1003df62
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
push dword [edi]
call fcn.1003be3a
add esp, 0x10
mov esi, 8
mov ebp, eax
push esi
call fcn.1003c0ec
add esp, 4
lea ebx, [esp + 0xa4]
push ebp
push eax
push ebx
call fcn.1003dff1
add esp, 0xc
lea ecx, [esp + 0x20]
call fcn.100b1880
lea ebp, [esp + 0xa8]
push dword [ebx]
push eax
push ebp
call fcn.10042f27
add esp, 0xc
lea edi, [esp + 0xac]
push esi
push dword [ebp]
push edi
call fcn.10042ef9
add esp, 0xc
xor eax, eax
lea ebx, [esp + 0x2cc]
inc eax
mov ecx, ebx
push eax
push dword [edi]
call fcn.100bb686
mov edi, dword [ebx + 4]
mov ecx, ebx
call fcn.100b19e4
mov ecx, esp
mov dword [ecx + 4], edi
mov edi, dword [esp + 0x3dc]
mov dword [ecx], eax
mov eax, ecx
lea ebx, [edi + 0xc]
mov ecx, ebx
push eax
lea eax, [esp + 0xc]
push eax
call fcn.1003df62
push ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 0x20]
push dword [esp + 0x18]
push edi
call fcn.10125514
add esp, 0x10
jmp case.0x100d78e9.470
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
mov eax, dword [esp + 0x3e4]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov ebp, esi
mov esi, eax
xor eax, eax
inc eax
push eax
call fcn.1003c0ec
sub esp, 8
mov dword [esp + 8], esi
lea esi, [esp + 0x1e0]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.1003dff1
add esp, 0xc
mov ecx, dword [esp + 0x3d4]
call fcn.100b1880
lea edi, [esp + 0x1d8]
push dword [esi]
push eax
push edi
call fcn.10042f27
add esp, 0xc
mov ecx, ebp
push dword [edi]
call fcn.100b18a2
xor eax, eax
lea esi, [esp + 0x364]
mov ecx, esi
inc eax
push eax
push ebp
call fcn.100a7798
mov edi, dword [esi + 4]
mov ecx, esi
call fcn.100b18fa
mov esi, eax
call fcn.1003c8c6
push edi
xor ecx, ecx
push ecx
push eax
push esi
call fcn.1003be3a
add esp, 0x10
mov esi, eax
mov eax, dword [esp + 0x3dc]
lea ebp, [eax + 0xc]
mov edi, eax
mov dword [esp + 0x10], ebp
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
push eax
push dword [edi + 0xc]
call fcn.1003be3a
add esp, 0x10
lea ebx, [esp + 0x1d0]
xor ecx, ecx
push ecx
push esi
push eax
push ebx
call fcn.1003e908
add esp, 0x10
mov ecx, ebp
mov eax, esp
push dword [ebx]
push eax
call fcn.1003defe
mov eax, dword [esp + 0x3d0]
lea esi, [eax*4 + 0x17ea0]
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0x24]
call fcn.100b1880
lea ebx, [esp + 0x1cc]
push esi
push eax
push ebx
call fcn.10042ef9
add esp, 0xc
xor edi, edi
lea esi, [esp + 0x35c]
mov ecx, esi
inc edi
push edi
push dword [ebx]
call fcn.100a7a46
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b1948
mov esi, eax
call fcn.1003b794
push ebx
xor ebp, ebp
push ebp
push eax
push esi
call fcn.1003be3a
add esp, 0x10
push eax
lea ebx, [esp + 0x24]
push ebx
lea eax, [esp + 8]
push eax
call fcn.10042fa0
add esp, 0xc
lea esi, [esp + 0x354]
mov ecx, esi
push edi
push ebx
call fcn.100a7798
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b18fa
mov esi, eax
call fcn.1003c8c6
push ebx
push ebp
push eax
push esi
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
push eax
mov eax, dword [esp + 0x3e8]
push dword [eax + 0xc]
call fcn.1003be3a
add esp, 0x10
lea ebx, [esp + 0x1c8]
push edi
push esi
push eax
push ebx
call fcn.1003e908
add esp, 0x10
mov esi, dword [esp + 0x10]
mov ecx, esi
push dword [ebx]
lea ebp, [esp + 4]
push ebp
call fcn.1003defe
lea eax, [esp + 0x54]
push esi
push eax
call fcn.10102dce
add esp, 8
lea ebx, [esp + 0x1c0]
push esi
push ebx
call fcn.10102dce
add esp, 8
lea eax, [esp + 0x54]
lea edi, [esp + 0x1c4]
push dword [eax]
push dword [ebx]
mov ebx, dword [esp + 0x14]
push edi
call fcn.1003d030
add esp, 0xc
mov ecx, esi
push dword [edi]
push ebp
call fcn.1003defe
mov ecx, ebp
xor eax, eax
push eax
call fcn.1003d206
mov edi, dword [esp + 0x3dc]
lea esi, [esp + 8]
mov ecx, edi
push ebp
push esi
call fcn.1003df26
mov ecx, ebp
xor eax, eax
push eax
call fcn.1003d206
lea ecx, [edi + 4]
push ebp
push esi
call fcn.1003df26
mov ecx, ebp
xor eax, eax
push eax
call fcn.1003d206
lea ecx, [edi + 8]
push ebp
push esi
jmp fcn.100f3a5b
call fcn.1003b794
xor ecx, ecx
push ecx
push ecx
push eax
mov eax, dword [esp + 0x3e4]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov ebp, esi
mov esi, eax
xor eax, eax
inc eax
push eax
mov ebx, eax
call fcn.1003c0ec
sub esp, 8
mov dword [esp + 8], esi
lea esi, [esp + 0x1c4]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.1003dff1
add esp, 0xc
mov ecx, dword [esp + 0x3d4]
call fcn.100b1880
lea edi, [esp + 0x1bc]
push dword [esi]
push eax
push edi
call fcn.10042f27
add esp, 0xc
mov ecx, ebp
push dword [edi]
call fcn.100b18a2
lea esi, [esp + 0x34c]
mov ecx, esi
push ebx
push ebp
call fcn.100a7798
mov edi, dword [esi + 4]
mov ecx, esi
call fcn.100b18fa
mov esi, eax
call fcn.1003c8c6
push edi
xor ecx, ecx
push ecx
push eax
push esi
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
xor edi, edi
push eax
mov ebx, dword [esp + 0x3e8]
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
lea ebp, [esp + 0x1b4]
push edi
push esi
push eax
push ebp
call fcn.1003e908
add esp, 0x10
mov ecx, ebx
mov edi, esp
push dword [ebp]
push edi
call fcn.1003defe
mov eax, dword [esp + 0x3d0]
lea esi, [eax*4 + 0x17ea0]
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0x24]
call fcn.100b1880
lea ebp, [esp + 0x1b0]
push esi
push eax
push ebp
call fcn.10042ef9
add esp, 0xc
xor ebx, ebx
lea esi, [esp + 0x344]
mov ecx, esi
inc ebx
push ebx
push dword [ebp]
call fcn.100a7a46
mov ebp, dword [esi + 4]
mov ecx, esi
call fcn.100b1948
mov esi, eax
call fcn.1003b794
push ebp
xor ecx, ecx
push ecx
push eax
push esi
call fcn.1003be3a
add esp, 0x10
push eax
lea ebp, [esp + 0x24]
push ebp
push edi
call fcn.10042fa0
add esp, 0xc
lea esi, [esp + 0x33c]
mov ecx, esi
push ebx
push ebp
call fcn.100a7798
mov ebp, dword [esi + 4]
mov ecx, esi
call fcn.100b18fa
mov esi, eax
call fcn.1003c8c6
push ebp
xor ecx, ecx
push ecx
push eax
push esi
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
push eax
mov edi, dword [esp + 0x3e8]
push dword [edi]
call fcn.1003be3a
add esp, 0x10
lea ebp, [esp + 0x1ac]
push ebx
push esi
push eax
push ebp
call fcn.1003e908
add esp, 0x10
mov ecx, edi
push dword [ebp]
lea esi, [esp + 4]
push esi
call fcn.1003defe
lea eax, [esp + 0x50]
push edi
push eax
call fcn.10102dce
add esp, 8
lea ebx, [esp + 0x1a4]
push edi
push ebx
call fcn.10102dce
add esp, 8
lea eax, [esp + 0x50]
lea ebp, [esp + 0x1a8]
push dword [eax]
push dword [ebx]
mov ebx, dword [esp + 0x14]
push ebp
call fcn.1003d030
add esp, 0xc
mov ecx, edi
push dword [ebp]
push esi
call fcn.1003defe
mov ecx, esi
xor eax, eax
push eax
call fcn.1003d206
lea ecx, [edi + 4]
lea ebp, [esp + 8]
push esi
push ebp
call fcn.1003df26
mov ecx, esi
xor eax, eax
push eax
call fcn.1003d206
lea ecx, [edi + 8]
push esi
push ebp
call fcn.1003df26
mov ecx, esi
push 0xffffffffffffffff
call fcn.1003d206
lea ecx, [edi + 0xc]
push esi
push ebp