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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov rax, qword [0x0109d1a0]
xor rax, rsp
mov qword [rsp + 0x88], rax
xor ebx, ebx
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x2c], r9d
mov r15, rdx
lea r10, [rsp + 0x68]
mov dword [rsp + 0x28], 1
mov word [rsp + 0x24], bx
mov edi, ebx
mov r13d, ebx
mov dword [rsp + 0x20], ebx
mov r14d, ebx
mov r12d, ebx
mov esi, ebx
mov ecx, ebx
mov r11, r8
mov al, byte [r8]
cmp al, 0x20
je 0x108d00b
cmp al, 9
je 0x108d00b
cmp al, 0xa
je 0x108d00b
cmp al, 0xd
jne 0x108d011
add r8, 1
jmp 0x108cff8
mov bpl, byte [rsp + 0x108]
mov dl, byte [r8]
add r8, 1
cmp ecx, 5
jg 0x108d1fd
je 0x108d1df
cmp ecx, ebx
mov r9d, ecx
je 0x108d19b
sub r9d, 1
je 0x108d15a
sub r9d, 1
je 0x108d123
sub r9d, 1
je 0x108d0e6
sub r9d, 1
jne 0x108d2ca
cmp edi, ebx
lea r13d, [r9 + 1]
mov dword [rsp + 0x20], r13d
jne 0x108d0a0
jmp 0x108d07a
mov dl, byte [r8]
sub esi, r13d
add r8, r13
cmp dl, 0x30
je 0x108d071
jmp 0x108d0a0
cmp dl, 0x39
jg 0x108d0a5
cmp edi, 0x19
jae 0x108d09a
sub dl, 0x30
add edi, r13d
mov byte [r10], dl
add r10, r13
sub esi, r13d
mov dl, byte [r8]
add r8, r13
cmp dl, 0x30
jge 0x108d081
cmp dl, 0x2b
je 0x108d0d9
cmp dl, 0x2d
je 0x108d0d9
cmp dl, 0x43
jle 0x108d2d4
cmp dl, 0x45
jle 0x108d0cf
cmp dl, 0x63
jle 0x108d2d4
cmp dl, 0x65
jg 0x108d2d4
mov ecx, 6
jmp 0x108d019
sub r8, r13
mov ecx, 0xb
jmp 0x108d019
mov r13d, 1
jmp 0x108d10f
cmp dl, 0x39
jg 0x108d114
cmp edi, 0x19
jae 0x108d106
sub dl, 0x30
add edi, r13d
mov byte [r10], dl
add r10, r13
jmp 0x108d109
add esi, r13d
mov dl, byte [r8]
add r8, r13
cmp dl, 0x30
jge 0x108d0ee
cmp dl, bpl
jne 0x108d0a5
mov ecx, 4
jmp 0x108d019
lea eax, [rdx - 0x31]
cmp al, 8
ja 0x108d138
mov ecx, 3
sub r8, 1
jmp 0x108d019
cmp dl, bpl
jne 0x108d147
mov ecx, 5
jmp 0x108d019
cmp dl, 0x30
jne 0x108d328
mov ecx, 1
jmp 0x108d019
lea eax, [rdx - 0x31]
mov r13d, 1
cmp al, 8
ja 0x108d173
lea ecx, [r13 + 2]
sub r8, r13
jmp 0x108d019
cmp dl, bpl
je 0x108d119
cmp dl, 0x2b
je 0x108d0d9
cmp dl, 0x2d
je 0x108d0d9
cmp dl, 0x30
jne 0x108d0af
mov ecx, r13d
jmp 0x108d019
lea eax, [rdx - 0x31]
cmp al, 8
jbe 0x108d12a
cmp dl, bpl
je 0x108d13d
cmp dl, 0x2b
je 0x108d1d0
cmp dl, 0x2d
je 0x108d1bf
cmp dl, 0x30
je 0x108d150
sub r8, 1
jmp 0x108d32b
mov ecx, 2
mov word [rsp + 0x24], 0x8000
jmp 0x108d019
mov ecx, 2
mov word [rsp + 0x24], bx
jmp 0x108d019
sub dl, 0x30
mov dword [rsp + 0x20], 1
cmp dl, 9
ja 0x108d328
mov ecx, 4
jmp 0x108d12f
mov r9d, ecx
sub r9d, 6
je 0x108d2ae
sub r9d, 1
je 0x108d28a
sub r9d, 1
je 0x108d25e
sub r9d, 1
je 0x108d2d9
sub r9d, 2
jne 0x108d2ca
cmp dword [rsp + 0x100], ebx
je 0x108d1b6
cmp dl, 0x2b
lea r11, [r8 - 1]
je 0x108d254
cmp dl, 0x2d
jne 0x108d328
or dword [rsp + 0x28], 0xffffffff
mov ecx, 7
jmp 0x108d019
mov ecx, 7
jmp 0x108d019
mov r14d, 1
jmp 0x108d26c
mov dl, byte [r8]
add r8, r14
cmp dl, 0x30
je 0x108d266
sub dl, 0x31
sub r8, r14
cmp dl, 8
ja 0x108d32b
mov ecx, 9
jmp 0x108d019
lea eax, [rdx - 0x31]
cmp al, 8
ja 0x108d29b
mov ecx, 9
jmp 0x108d12f
cmp dl, 0x30
jne 0x108d328
mov ecx, 8
jmp 0x108d019
lea eax, [rdx - 0x31]
lea r11, [r8 - 2]
cmp al, 8
jbe 0x108d291
cmp dl, 0x2b
je 0x108d2c5
cmp dl, 0x2d
je 0x108d245
jmp 0x108d29b
mov ecx, 7
cmp ecx, 0xa
je 0x108d32b
jmp 0x108d019
sub r8, r13
jmp 0x108d32b
mov r14d, 1
mov r9b, 0x30
jmp 0x108d304
cmp dl, 0x39
jg 0x108d31e
lea ecx, [r12 + r12*4]
movsx eax, dl
lea r12d, [rax + rcx*2 - 0x30]
cmp r12d, 0x1450
jg 0x108d30b
mov dl, byte [r8]
add r8, r14
cmp dl, r9b
jge 0x108d2e4
jmp 0x108d31e
mov r12d, 0x1451
jmp 0x108d31e
cmp dl, 0x39
jg 0x108d323
mov dl, byte [r8]
add r8, r14
cmp dl, r9b
jge 0x108d313
sub r8, r14
jmp 0x108d32b
mov r8, r11
cmp r13d, ebx
mov qword [r15], r8
je 0x108d789
cmp edi, 0x18
jbe 0x108d356
mov al, byte [rsp + 0x7f]
cmp al, 5
jl 0x108d34a
add al, 1
mov byte [rsp + 0x7f], al
sub r10, 1
mov edi, 0x18
add esi, 1
cmp edi, ebx
jbe 0x108d77d
sub r10, 1
or r13d, 0xffffffff
jmp 0x108d372
add edi, r13d
add esi, 1
sub r10, 1
cmp byte [r10], bl
je 0x108d368
lea r8, [rsp + 0x48]
lea rcx, [rsp + 0x68]
mov edx, edi
call fcn.0108cd78
cmp dword [rsp + 0x28], ebx
jge 0x108d391
neg r12d
add r12d, esi
cmp r14d, ebx
jne 0x108d3a1
add r12d, dword [rsp + 0xf0]
cmp dword [rsp + 0x20], ebx
jne 0x108d3af
sub r12d, dword [rsp + 0xf8]
cmp r12d, 0x1450
jg 0x108d768
cmp r12d, 0xffffebb0
jl 0x108d757
lea rbp, [0x0109e690]
sub rbp, 0x60
cmp r12d, ebx
je 0x108d741
jge 0x108d3ed
lea rbp, [0x0109e7f0]
neg r12d
sub rbp, 0x60
neg dword [rsp + 0x2c]
sbb ax, ax
and ax, word [rsp + 0x48]
cmp r12d, ebx
mov word [rsp + 0x48], ax
je 0x108d741
mov r9w, 0x7fff
mov edi, 0x80000000
mov eax, r12d
sar r12d, 3
add rbp, 0x54
and eax, 7
mov dword [rsp + 0x28], r12d
cmp eax, ebx
je 0x108d738
cdqe
mov r11w, 0x8000
lea rcx, [rax + rax*2]
lea rdx, [rbp + rcx*4]
cmp word [rdx], r11w
jb 0x108d468
mov rax, qword [rdx]
lea rcx, [rsp + 0x58]
mov qword [rcx], rax
mov eax, dword [rdx + 8]
lea rdx, [rsp + 0x58]
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x58]
shr rax, 0x10
sub eax, 1
mov dword [rsp + 0x5a], eax
movzx ecx, word [rdx + 0xa]
mov eax, ebx
movzx eax, word [rsp + 0x52]
movzx esi, cx
and cx, r9w
mov dword [rsp + 0x38], ebx
xor si, ax
and ax, r9w
mov dword [rsp + 0x3c], ebx
and si, r11w
cmp ax, r9w
lea r8d, [rax + rcx]
mov dword [rsp + 0x40], ebx
jae 0x108d720
cmp cx, r9w
jae 0x108d720
cmp r8w, 0xbffd
ja 0x108d720
cmp r8w, 0x3fbf
ja 0x108d4c6
mov dword [rsp + 0x50], ebx
jmp 0x108d730
cmp ax, bx
jne 0x108d4f2
mov eax, dword [rsp + 0x50]
add r8w, 1
btr eax, 0x1f
cmp eax, ebx
jne 0x108d4f2
cmp dword [rsp + 0x4c], ebx
jne 0x108d4f2
cmp dword [rsp + 0x48], ebx
jne 0x108d4f2
mov word [rsp + 0x52], bx
jmp 0x108d738
cmp cx, bx
jne 0x108d510
mov eax, dword [rdx + 8]
add r8w, 1
btr eax, 0x1f
cmp eax, ebx
jne 0x108d510
cmp dword [rdx + 4], ebx
jne 0x108d510
cmp dword [rdx], ebx
je 0x108d4bd
mov r13d, ebx
lea rcx, [rsp + 0x3c]
mov r10d, 5
cmp r10d, ebx
lea eax, [r13 + r13]
mov dword [rsp + 0x2c], r10d
movsxd r9, eax
jle 0x108d58d
mov edi, r13d
lea r14, [rsp + r9 + 0x48]
lea r15, [rdx + 8]
and edi, 1
movzx eax, word [r15]
movzx r9d, word [r14]
mov r11d, ebx
imul r9d, eax
mov eax, dword [rcx - 4]
lea r12d, [rax + r9]
cmp r12d, eax
jb 0x108d55f
cmp r12d, r9d
jae 0x108d565
mov r11d, 1
cmp r11d, ebx
mov dword [rcx - 4], r12d
je 0x108d572
add word [rcx], 1
mov r11d, dword [rsp + 0x2c]
add r14, 2
sub r15, 2
sub r11d, 1
cmp r11d, ebx
mov dword [rsp + 0x2c], r11d
jg 0x108d53f
sub r10d, 1
add rcx, 2
add r13d, 1
cmp r10d, ebx
jg 0x108d51e
mov r10d, dword [rsp + 0x40]
mov r9d, dword [rsp + 0x38]
add r8w, 0xc002
cmp r8w, bx
jle 0x108d5fb
bt r10d, 0x1f
jb 0x108d5f5
mov r11d, dword [rsp + 0x3c]
mov edx, r9d
add r10d, r10d
shr edx, 0x1f
add r9d, r9d
mov ecx, r11d
shr ecx, 0x1f
lea eax, [r11 + r11]
add r8w, 0xffff
or eax, edx
or r10d, ecx
cmp r8w, bx
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x38], r9d
jg 0x108d5b4
cmp r8w, bx
jg 0x108d672
add r8w, 0xffff
jns 0x108d672
movzx eax, r8w
neg ax
movzx edx, ax
add r8w, dx
test byte [rsp + 0x38], 1
je 0x108d61b
add ebx, 1
mov r11d, dword [rsp + 0x3c]
mov eax, r10d
shr r9d, 1
mov ecx, r11d
shl eax, 0x1f
shr r11d, 1
shl ecx, 0x1f
or r11d, eax
shr r10d, 1
or r9d, ecx
sub rdx, 1
mov dword [rsp + 0x3c], r11d
mov dword [rsp + 0x38], r9d
jne 0x108d611
mov dword [rsp + 0x20], ebx
xor ebx, ebx
mov dword [rsp + 0x40], r10d
mov eax, dword [rsp + 0x20]
cmp eax, ebx
je 0x108d672
movzx eax, r9w
or ax, 1
mov word [rsp + 0x38], ax
mov r9d, dword [rsp + 0x38]
jmp 0x108d677
mov ax, word [rsp + 0x38]
mov r11w, 0x8000
mov edi, 0x80000000
cmp ax, r11w
ja 0x108d697
and r9d, 0x1ffff
cmp r9d, 0x18000
jne 0x108d6ed
mov eax, dword [rsp + 0x3a]
or r13d, 0xffffffff
cmp eax, r13d
jne 0x108d6e6
mov eax, dword [rsp + 0x3e]
mov dword [rsp + 0x3a], ebx
cmp eax, r13d
jne 0x108d6d8
movzx eax, word [rsp + 0x42]
mov dword [rsp + 0x3e], ebx
cmp ax, 0xffff
jne 0x108d6cd
mov word [rsp + 0x42], r11w
add r8w, 1
jmp 0x108d6df
add ax, 1
mov word [rsp + 0x42], ax
jmp 0x108d6df
add eax, 1
mov dword [rsp + 0x3e], eax
mov r10d, dword [rsp + 0x40]
jmp 0x108d6ed
add eax, 1
mov dword [rsp + 0x3a], eax
mov r12d, dword [rsp + 0x28]
mov r9w, 0x7fff
cmp r8w, r9w
jae 0x108d720
movzx eax, word [rsp + 0x3a]
or r8w, si
mov dword [rsp + 0x4e], r10d
mov word [rsp + 0x48], ax
mov eax, dword [rsp + 0x3c]
mov word [rsp + 0x52], r8w
mov dword [rsp + 0x4a], eax
jmp 0x108d738
neg si
sbb eax, eax
and eax, edi
add eax, 0x7fff8000
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x4c], ebx
cmp r12d, ebx
jne 0x108d411
mov eax, dword [rsp + 0x50]
movzx ecx, word [rsp + 0x48]
mov edx, dword [rsp + 0x4a]
mov edi, dword [rsp + 0x4e]
shr eax, 0x10
jmp 0x108d798
mov cx, bx
mov ax, bx
mov edi, ebx
mov edx, ebx
mov ebx, 1
jmp 0x108d798
mov edx, ebx
mov cx, bx
mov ax, 0x7fff
mov ebx, 2
mov edi, 0x80000000
jmp 0x108d798
mov cx, bx
mov ax, bx
mov edi, ebx
mov edx, ebx
jmp 0x108d798
mov cx, bx
mov ax, bx
mov edi, ebx
mov edx, ebx
mov ebx, 4
mov r8, qword [rsp + 0x30]
or ax, word [rsp + 0x24]
mov word [r8 + 0xa], ax
mov eax, ebx
mov word [r8], cx
mov dword [r8 + 2], edx
mov dword [r8 + 6], edi
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.0107dbd0
mov rbx, qword [rsp + 0xe0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret