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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x168
xor r15d, r15d
or rbp, 0xffffffffffffffff
movaps xmmword [r11 - 0x58], xmm6
mov rax, r15
mov r14, rcx
lea rcx, [r11 + 0x10]
movaps xmmword [r11 - 0x68], xmm7
movaps xmmword [r11 - 0x78], xmm8
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x70], rax
lea eax, [rbp + 2]
mov qword [rsp + 0x68], r15
mov qword [rsp + 0xd0], r15
mov qword [r11 + 0x20], r15
mov r13, rax
mov qword [r11 - 0x100], rax
mov qword [rsp + 0xc8], rbp
call fcn.1400591c8
lea rbx, [0x1401155d8]
lea rcx, [rsp + 0x80]
mov rdx, rbx
mov qword [rsp + 0xa0], r15
call fcn.14006d5dc
lea rcx, [rsp + 0x128]
mov rdx, rbx
call fcn.14006d5dc
lea rcx, [rsp + 0x118]
mov rdx, rbx
call fcn.14006d5dc
mov rbx, qword [rsp + 0x1b8]
lea eax, [rbp + 0x2e]
xorpd xmm8, xmm8
movapd xmm7, xmm8
movsd qword [rsp + 0x48], xmm7
mov si, r15w
mov r12d, r15d
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x58], r15d
mov edi, r15d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x3c], esi
mov qword [rsp + 0xe0], r15
cmp ax, word [rbx]
jne 0x1400ca441
lea rdx, [rsp + 0x1b8]
lea rcx, str._txt
mov r8d, 4
mov ebx, 0xa3
call fcn.14006420c
cmp al, r15b
je 0x1400ca1c0
mov dword [rsp + 0x38], 4
jmp 0x1400ca234
lea rdx, [rsp + 0x1b8]
lea rcx, [0x140122ee8]
mov r8d, 3
call fcn.14006420c
cmp al, r15b
je 0x1400ca1e9
mov dword [rsp + 0x58], 3
jmp 0x1400ca234
lea rdx, [rsp + 0x1b8]
lea rcx, [0x14011b9d4]
mov r8d, 2
call fcn.14006420c
cmp al, r15b
je 0x1400ca210
mov esi, ebx
mov dword [rsp + 0x3c], ebx
jmp 0x1400ca234
lea rdx, [rsp + 0x1b8]
lea rcx, [0x14011aed0]
mov r8d, 4
call fcn.14006420c
cmp al, r15b
je 0x1400ca246
mov edi, 1
lea rcx, [rsp + 0x1b8]
call fcn.1400591c8
jmp 0x1400ca3bd
lea rdx, [rsp + 0x1b8]
lea rcx, str._base
mov r8d, 6
call fcn.14006420c
cmp al, r15b
je 0x1400ca2ad
mov rcx, qword [rsp + 0x1b8]
movzx eax, word [rcx]
or ax, 0x20
cmp ax, 0x75
jne 0x1400ca28d
add rcx, 2
mov si, bx
mov qword [rsp + 0x1b8], rcx
mov dword [rsp + 0x3c], esi
mov eax, 0xa
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x1b8]
mov dword [rsp + 0x40], eax
call fcn.1400717bc
jmp 0x1400ca3bd
lea rdx, [rsp + 0x1b8]
lea rcx, str._err
mov r8d, 5
call fcn.14006420c
cmp al, r15b
je 0x1400ca308
mov rax, qword [rsp + 0x1b8]
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0xb8]
mov qword [rsp + 0xb8], rax
call fcn.14007154c
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b8]
call fcn.1400659b0
jmp 0x1400ca3bd
lea rdx, [rsp + 0x1b8]
lea rcx, [0x1401201c8]
mov r8d, 2
call fcn.14006420c
cmp al, r15b
je 0x1400ca3d5
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x1b8]
call fcn.1400ae36c
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x1b8]
call fcn.1400ae36c
mov r12, qword [rsp + 0x70]
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x1b8]
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0x1c8], r12
call fcn.14007154c
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x1b8]
call fcn.14007154c
mov r13, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0x68]
cmp r13, r15
mov eax, 1
cmovle r13, rax
sub rbp, r12
add rbp, rax
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xc8], rbp
mov rbx, qword [rsp + 0x1b8]
mov eax, 0x2d
cmp ax, word [rbx]
je 0x1400ca192
jmp 0x1400ca3dd
mov rbx, qword [rsp + 0x1b8]
cmp edi, r15d
je 0x1400ca426
lea rdx, str.27:INDATA
lea rcx, [rsp + 0x1b8]
call fcn.14006d5dc
lea rcx, [rsp + 0x1b8]
mov rdx, rbx
call fcn.1400617d4
mov rdx, qword [rsp + 0x1b8]
mov rcx, r14
call fcn.140030c38
lea rcx, [rsp + 0x1b8]
mov rbx, rax
jmp 0x1400cb4ef
mov rax, qword [rsp + 0x1c8]
movsd xmm7, qword [rsp + 0x48]
mov r12d, dword [rsp + 0x38]
mov qword [rsp + 0xd0], rax
mov ecx, 0x24
lea eax, [rcx - 1]
cmp word [rbx], ax
jne 0x1400ca457
or si, ax
mov dword [rsp + 0x3c], esi
jmp 0x1400ca462
cmp cx, word [rbx]
jne 0x1400ca46e
mov word [rsp + 0x3c], r15w
add rbx, 2
mov qword [rsp + 0x1b8], rbx
lea rcx, [rsp + 0x1b8]
call fcn.1400591c8
mov rbx, qword [rsp + 0x1b8]
cmp word [rbx], r15w
jne 0x1400ca491
mov rbx, r15
jmp 0x1400cb4f4
mov rcx, rbx
call fcn.140018860
lea rcx, [rsp + 0x98]
mov rdx, rbx
call fcn.14006d5dc
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0x98]
movsxd rdx, eax
add rdx, 0xa
call fcn.140061798
mov rbx, qword [rsp + 0x98]
mov edx, 0x3b
mov rcx, rbx
mov qword [rsp + 0x1b8], rbx
call qword [sym.imp.SHLWAPI.dll_StrChrW]
mov rdi, rax
cmp rax, r15
je 0x1400ca4f0
mov word [rax], r15w
mov eax, 0x28
lea ecx, [rax + 8]
lea esi, [rax + 0x15]
cmp word [rbx], cx
jb 0x1400ca506
cmp word [rbx], 0x39
jbe 0x1400ca576
cmp ax, word [rbx]
je 0x1400ca576
mov eax, 0x2d
cmp ax, word [rbx]
jne 0x1400ca522
movzx eax, word [rbx + 2]
sub ax, cx
cmp ax, 9
jbe 0x1400ca576
mov edx, esi
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_StrChrW]
cmp rax, r15
je 0x1400ca576
cmp si, word [rax + 2]
je 0x1400ca54e
mov ecx, 0x3e
cmp cx, word [rax - 2]
je 0x1400ca54e
mov ecx, 0x3c
cmp cx, word [rax - 2]
jne 0x1400ca551
mov rax, r15
cmp rax, r15
je 0x1400ca576
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x1b8]
mov r8d, esi
call fcn.140065568
mov rbx, qword [rsp + 0x1b8]
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x1c8]
call fcn.14006d5dc
cmp byte [r14 + 0xda], r15b
jne 0x1400ca5c1
test byte [r14 + 0xd], 0xf
jne 0x1400ca5c1
mov rdx, qword [rsp + 0x1c8]
mov eax, 1
lea r8, [rsp + 0x80]
xor r9d, r9d
mov rcx, r14
mov byte [rsp + 0x20], al
call fcn.140078cc4
jmp 0x1400ca5e5
mov rdx, qword [rsp + 0x1c8]
mov eax, 1
lea r8, [rsp + 0x80]
xor r9d, r9d
mov rcx, r14
mov byte [rsp + 0x20], al
call fcn.14007714c
lea rcx, [rsp + 0x1c8]
call fcn.1400591f8
cmp rdi, r15
je 0x1400ca5ff
mov eax, 0x3b
mov word [rdi], ax
cmp si, word [rbx]
jne 0x1400ca610
add rbx, 2
mov qword [rsp + 0x1b8], rbx
lea rcx, [rsp + 0x1b8]
call fcn.1400591c8
mov r15, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x1b8]
xor ebx, ebx
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x120], r15
cmp rbp, rbx
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0xb8], rbx
jle 0x1400ca6bd
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, rsi
movsxd rbx, eax
add rbx, 0x191
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0x90]
movsxd rdx, eax
add rdx, 0x641
add rdx, rbx
call fcn.140061798
mov rax, qword [rsp + 0x90]
lea r12, [rax + rbx*2]
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xb8], r12
jmp 0x1400cb407
lea rcx, [rsp + 0x60]
call fcn.140061698
lea rcx, [rsp + 0x50]
call fcn.140061698
mov eax, 4
lea rcx, str.txticon1_0_
sub eax, r12d
cdqe
lea rax, [rcx + rax*2]
lea rcx, [0x140136118]
mov qword [rsp + 0x110], rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r12, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0xf0], r12
mov ebp, dword [rsp + 0x3c]
movzx eax, word [rsi]
mov byte [rsp + 0x1c8], bl
mov r13w, bp
mov r10, rsi
mov dword [rsp + 0x1b8], r13d
cmp ax, bx
je 0x1400ca77a
mov ecx, 0x3b
lea edx, [rcx - 0x31]
cmp cx, ax
je 0x1400ca75a
cmp ax, dx
je 0x1400ca75a
cmp ax, 0xd
je 0x1400ca75a
add rsi, 2
mov qword [rsp + 0x78], rsi
mov ax, word [rsi]
cmp ax, bx
je 0x1400ca77a
jmp 0x1400ca737
mov word [rsi], bx
add rsi, 2
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x48], rsi
call fcn.1400591c8
mov rsi, qword [rsp + 0x48]
mov qword [rsp + 0x78], rsi
cmp byte [r14 + 0xda], bl
jne 0x1400ca7a6
test byte [r14 + 0xd], 0xf
jne 0x1400ca7a6
lea r8, [rsp + 0xa0]
xor r9d, r9d
mov rdx, r10
mov rcx, r14
mov byte [rsp + 0x20], bl
call fcn.140078cc4
jmp 0x1400ca7c0
lea r8, [rsp + 0xa0]
xor r9d, r9d
mov rdx, r10
mov rcx, r14
mov byte [rsp + 0x20], bl
call fcn.14007714c
mov rbx, qword [rsp + 0xa0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0x88]
lea eax, [rax + rax + 4]
movsxd rdx, eax
call fcn.14006170c
movzx ecx, word [rbx]
mov rax, qword [rsp + 0x88]
xor r10d, r10d
mov r8, rax
mov r11, r10
lea r9d, [r10 + 2]
cmp cx, r10w
je 0x1400caca6
lea edi, [r10 + 0x26]
lea r14d, [r10 + 0x3d]
lea r15d, [r10 + 0x23]
lea r12d, [r10 + 0x3c]
lea r11d, [r10 + 0x2d]
lea r13d, [r10 + 0x5e]
lea esi, [rdi + 0x56]
lea ebp, [rdi + 0x15]
lea eax, [rdi + 0x18]
cmp cx, 0x41
jb 0x1400ca841
cmp cx, 0x5a
ja 0x1400ca841
add cx, 0x20
mov word [r8], cx
jmp 0x1400cac5d
mov edx, 0xff21
cmp cx, dx
jb 0x1400ca85f
mov edx, 0xff3a
cmp cx, dx
ja 0x1400ca85f
mov edx, 0x140
add cx, dx
jmp 0x1400ca838
mov edx, 0xff41
cmp cx, dx
jb 0x1400ca87a
mov edx, 0xff5a
cmp cx, dx
ja 0x1400ca87a
mov edx, 0x120
jmp 0x1400ca85a
mov edx, 0xff10
cmp cx, dx
jb 0x1400ca88e
mov edx, 0xff19
cmp cx, dx
jbe 0x1400ca873
mov edx, 0xff0b
cmp dx, cx
jne 0x1400ca89f
mov ecx, 0x2b
jmp 0x1400ca838
mov edx, 0xff0d
cmp dx, cx
je 0x1400cac59
mov edx, 0x2014
cmp dx, cx
je 0x1400cac59
mov edx, 0xd7
cmp dx, cx
je 0x1400cac4f
mov edx, 0xff0a
cmp dx, cx
je 0x1400cac4f
mov edx, 0xf7
cmp dx, cx
je 0x1400cac45
mov edx, 0xff0f
cmp dx, cx
je 0x1400cac45
mov edx, 0x2215
cmp dx, cx
je 0x1400cac45
mov edx, 0xff05
cmp dx, cx
je 0x1400cac3b
mov edx, 0xfe6a
cmp dx, cx
je 0x1400cac3b
mov edx, 0xff06
cmp dx, cx
jne 0x1400ca930
mov word [r8], di
jmp 0x1400cac5d
mov edx, 0xff20
cmp dx, cx
je 0x1400cac31
mov edx, 0xfe6b
cmp dx, cx
je 0x1400cac31
mov edx, 0xff3e
cmp dx, cx
jne 0x1400ca95f
mov word [r8], r13w
jmp 0x1400cac5d
mov edx, 0xff1d
cmp dx, cx
je 0x1400cabbd
mov edx, 0xfe66
cmp dx, cx
je 0x1400cabbd
mov edx, 0xff03
cmp dx, cx
jne 0x1400ca98e
mov word [r8], r15w
jmp 0x1400cac5d
mov edx, 0xff08
cmp dx, cx
je 0x1400cac27
mov edx, 0xfe59
cmp dx, cx
je 0x1400cac27
mov edx, 0xfe5d
cmp dx, cx
je 0x1400cac27
mov edx, 0x3014
cmp dx, cx
je 0x1400cac27
mov edx, 0xff09
cmp dx, cx
je 0x1400cac1d
mov edx, 0xfe5a
cmp dx, cx
je 0x1400cac1d
mov edx, 0xfe5e
cmp dx, cx
je 0x1400cac1d
mov edx, 0x3015
cmp dx, cx
je 0x1400cac1d
mov edx, 0xff3b
cmp dx, cx
je 0x1400cac13
mov edx, 0x3010
cmp dx, cx
je 0x1400cac13
mov edx, 0xff3d
cmp dx, cx
je 0x1400cac09
mov edx, 0x3011
cmp dx, cx
je 0x1400cac09
mov edx, 0xff5b
cmp dx, cx
je 0x1400cabff
mov edx, 0xfe5b
cmp dx, cx
je 0x1400cabff
mov edx, 0xff5d
cmp dx, cx
je 0x1400cabf5
mov edx, 0xfe5c
cmp dx, cx
je 0x1400cabf5
mov edx, 0x300a
cmp dx, cx
je 0x1400cabef
mov edx, 0x3008
cmp dx, cx
je 0x1400cabef
mov edx, 0xff1c
cmp dx, cx
je 0x1400cabef
mov edx, 0x300b
cmp dx, cx
je 0x1400cabe9
mov edx, 0x3009
cmp dx, cx
je 0x1400cabe9
mov edx, 0xff1e
cmp dx, cx
je 0x1400cabe9
mov edx, 0xff0c
cmp dx, cx
jne 0x1400caad6
mov ecx, 0x2c
jmp 0x1400ca838
mov edx, 0xff0e
cmp dx, cx
je 0x1400cabdf
mov edx, 0x3002
cmp dx, cx
je 0x1400cabdf
mov edx, 0xff1b
cmp dx, cx
jne 0x1400cab05
mov word [r8], bp
jmp 0x1400cac5d
mov edx, 0x3000
cmp dx, cx
jne 0x1400cab19
mov ecx, 0x20
jmp 0x1400ca838
mov edx, 0xff5e
cmp dx, cx
jne 0x1400cab2d
mov ecx, 0x7e
jmp 0x1400ca838
mov edx, 0xff01
cmp dx, cx
je 0x1400cabd5
mov edx, 0xfe57
cmp dx, cx
je 0x1400cabd5
mov edx, 0xa7
cmp dx, cx
je 0x1400cabcc
mov edx, 0xff5c
cmp dx, cx
je 0x1400cabcc
cmp si, cx
je 0x1400cabcc
mov edx, 0x2223
cmp dx, cx
je 0x1400cabcc
mov edx, 0xffe4
cmp dx, cx
je 0x1400cabcc
mov edx, 0x2264
cmp dx, cx
je 0x1400cabc6
mov edx, 0x2266
cmp dx, cx
je 0x1400cabc6
mov edx, 0x226f
cmp dx, cx
je 0x1400cabc6
mov edx, 0x2265
cmp dx, cx
je 0x1400cabb6
mov edx, 0x2267
cmp dx, cx
je 0x1400cabb6
mov edx, 0x226e
cmp dx, cx
jne 0x1400ca838
mov word [r8], ax
add r8, r9
mov word [r8], r14w
jmp 0x1400cac5d
mov word [r8], r12w
jmp 0x1400cabba
mov word [r8], si
jmp 0x1400cac5d
mov ecx, 0x21
jmp 0x1400ca838
mov ecx, 0x2e
jmp 0x1400ca838
mov word [r8], ax
jmp 0x1400cac5d
mov word [r8], r12w
jmp 0x1400cac5d
mov ecx, 0x7d
jmp 0x1400ca838
mov ecx, 0x7b
jmp 0x1400ca838
mov ecx, 0x5d
jmp 0x1400ca838
mov ecx, 0x5b
jmp 0x1400ca838
mov ecx, 0x29
jmp 0x1400ca838
mov ecx, 0x28
jmp 0x1400ca838
mov ecx, 0x40
jmp 0x1400ca838
mov ecx, 0x25
jmp 0x1400ca838
mov ecx, 0x2f
jmp 0x1400ca838
mov ecx, 0x2a
jmp 0x1400ca838
mov word [r8], r11w
add rbx, r9
add r8, r9
mov cx, word [rbx]
cmp cx, r10w
jne 0x1400ca828
mov rax, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
mov r12, qword [rsp + 0xf0]
mov r13d, dword [rsp + 0x1b8]
mov rsi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x1b0]
mov r15, qword [rsp + 0x68]
mov ebp, dword [rsp + 0x3c]
mov r11, r10
lea rcx, [rsp + 0x1b8]
mov word [r8], r10w
mov qword [rsp + 0x1b8], rax
call fcn.1400591c8
mov rbx, qword [rsp + 0x1b8]
mov ecx, 0x23
lea edx, [rcx + 1]
cmp cx, word [rbx]
jne 0x1400cacde
mov r13w, bp
or r13w, cx
jmp 0x1400cace6
cmp dx, word [rbx]
jne 0x1400cace9
mov r13d, r10d
add rbx, r9
mov eax, 0x26
mov r9, rbx
cmp ax, word [rbx]
jne 0x1400cad00
add r9, 2
cmp ax, word [r9]
je 0x1400cacf6
cmp word [r9], 0x5f
je 0x1400cad26
cmp word [r9], dx
je 0x1400cad26
cmp word [r9], 0x61
jb 0x1400cad1b
cmp word [r9], 0x7a
jbe 0x1400cad26
mov eax, 0x80
cmp word [r9], ax
jb 0x1400cad84
add r9, 2
mov qword [rsp + 0x1b8], r9
movzx ecx, word [r9]
call fcn.14005eb28
cmp al, r10b
je 0x1400cad5a
add r9, 2
movzx ecx, word [r9]
call fcn.14005eb28
cmp al, r10b
jne 0x1400cad40
mov qword [rsp + 0x1b8], r9
lea rcx, [rsp + 0x1b8]
call fcn.1400591c8
mov rax, qword [rsp + 0x1b8]
mov ecx, 0x3d
cmp cx, word [rax]
mov ecx, 0x23
jne 0x1400cad84
mov r11, r9
mov r8, rax
mov eax, 0x3d
cmp ax, word [r8]
jne 0x1400cada1
mov qword [rsp + 0xb0], rbx
mov word [r11], r10w
lea rbx, [r8 + 2]
jmp 0x1400cadb8
cmp word [rsi], r10w
lea rbp, [0x1401155d8]
cmove rbp, r15
mov qword [rsp + 0xb0], rbp
mov edx, ecx
mov word [rdi], r10w
mov rcx, rbx
mov word [r12], r10w
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor r12d, r12d
mov rsi, rax
mov qword [rsp + 0x48], rax
cmp rax, r12
je 0x1400cade9
add rsi, 2
mov word [rax], r12w
mov qword [rsp + 0x48], rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebp, 1
sub eax, ebp
lea edx, [rbp + 0x2a]
movsxd rcx, eax
movzx eax, word [rbx + rcx*2]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x2c]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x29]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x2e]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x24]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x5d]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x3f]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x25]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x7b]
cmp ax, dx
je 0x1400cae72
lea edx, [rbp + 0x3c]
cmp ax, dx
je 0x1400cae60
lea edx, [rbp + 0x3d]
cmp ax, dx
je 0x1400cae60
lea edx, [rbp + 0x3b]
cmp ax, dx
jne 0x1400cae77
mov eax, 0x30
mov word [rbx + rcx*2 + 2], ax
mov word [rbx + rcx*2 + 4], r12w
jmp 0x1400cae77
mov word [rbx + rcx*2], r12w
lea rcx, [rsp + 0x30]
mov edx, 0x64
call fcn.14006170c
mov rcx, rbx
mov word [rbx - 2], r12w
call fcn.140063168
cmp eax, r12d
jge 0x1400caeaa
mov r15, 0xffffffff80070057
cmp r13w, r12w
jne 0x1400caedd
jmp 0x1400caf67
mov eax, 0x23
lea rdx, [rsp + 0x1c8]
mov rcx, rbx
cmp r13w, ax
jb 0x1400caf4d
call fcn.14007bd90
mov rbp, rax
movsx rax, byte [rsp + 0x1c8]
mov r15, rax
cmp al, r12b
je 0x1400caee5
mov rbp, qword [rsp + 0xe0]
cmp qword [rsp + 0x1c0], r12
je 0x1400cb019
lea rcx, [rsp + 0x30]
call fcn.1400591f8
lea rcx, [rsp + 0x88]
call fcn.1400591f8
lea rcx, [0x140136118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x50]
call fcn.1400591f8
lea rcx, [rsp + 0x60]
call fcn.1400591f8
lea rcx, [rsp + 0x90]
call fcn.1400591f8
lea rcx, [rsp + 0x98]
call fcn.1400591f8
mov rbx, rbp
jmp 0x1400cb4f4
call fcn.14007bd1c
movsx rax, byte [rsp + 0x1c8]
mov r15, rax
movapd xmm6, xmm0
cmp al, r12b
je 0x1400caf6b
movapd xmm6, xmm7
mov rax, qword [rsp + 0x1c0]
cmp rax, r12
jne 0x1400cb499
cmp dword [rsp + 0x40], ebp
mov bl, r12b
jle 0x1400cb198
comisd xmm8, xmm6
jbe 0x1400cafa3
movsd xmm0, qword [0x14011e108]
mov bl, bpl
subsd xmm0, xmm6
movapd xmm6, xmm0
lea rcx, [rsp + 0xd8]
movapd xmm2, xmm8
movapd xmm1, xmm6
xor r9d, r9d
mov byte [rsp + 0x28], 0x66
mov byte [rsp + 0x20], r12b
call fcn.1400df970
mov rdx, qword [rsp + 0xd8]
mov rbp, r12
mov r14d, 0x30
movzx eax, word [rdx]
sub ax, r14w
cmp ax, 9
ja 0x1400caffc
movzx eax, word [rdx]
sub eax, r14d
add rdx, 2
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x1400cafd7
mov r14, qword [rsp + 0x1b0]
cmp bl, r12b
je 0x1400cb00c
neg rbp
lea rcx, [rsp + 0xd8]
call fcn.1400591f8
mov eax, dword [rsp + 0x40]
mov ebx, 1
cmp eax, ebx
jg 0x1400cb054
lea ecx, [rbx + 0x22]
mov rbx, qword [rsp + 0x30]
lea rax, str._I64u
cmp r13w, cx
lea r8, str._I64d
mov rdx, rbp
cmova r8, rax
mov rcx, rbx
call fcn.1400dfcfc
jmp 0x1400cb242
lea rcx, [0x1401155d8]
cmp eax, 2
jne 0x1400cb069
lea r12, [0x140122e8c]
jmp 0x1400cb085
cmp eax, 8
jne 0x1400cb077
lea r12, [0x140122e84]
jmp 0x1400cb085
lea r12, [0x140122e7c]
cmp eax, 0x10
cmovne r12, rcx
mov r14, rcx
mov ecx, 0x23
cmp r13w, cx
ja 0x1400cb0a2
test rbp, rbp
jns 0x1400cb0a5
lea r14, [0x1401202d8]
neg rbp
test rbp, rbp
jne 0x1400cb0bc
lea rdx, [0x1401198a0]
lea rcx, [rsp + 0x30]
call fcn.14006d65c
mov eax, dword [rsp + 0x40]
cmp rbp, rbx
jb 0x1400cb140
mov rbx, qword [rsp + 0x30]
movsxd r13, eax
mov edi, 1
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x70]
call fcn.14006d63c
xor edx, edx
mov rax, rbp
div r13
mov rcx, rbx
mov r8d, edx
lea rdx, [0x140122e74]
mov rbp, rax
call qword [sym.imp.USER32.dll_wsprintfW]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, rbx
movsxd rsi, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rdx, qword [rsp + 0x70]
movsxd rcx, eax
lea eax, [rsi + 1]
movsxd r8, eax
lea rcx, [rbx + rcx*2]
add r8, r8
call fcn.14001d614
lea rcx, [rsp + 0x70]
call fcn.1400591f8
cmp rbp, rdi
jae 0x1400cb0ce
mov rdi, qword [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xf8]
call fcn.14006d63c
lea rcx, [rsp + 0x30]
mov rdx, r14
call fcn.14006d65c
lea rcx, [rsp + 0x30]
mov rdx, r12
call fcn.1400617d4
mov rdx, qword [rsp + 0xf8]
lea rcx, [rsp + 0x30]
call fcn.1400617d4
lea rcx, [rsp + 0xf8]
call fcn.1400591f8
mov r14, qword [rsp + 0x1b0]
jmp 0x1400cb23d
or r9d, 0xffffffff
mov bpl, r12b
mov dword [rsp + 0x1b8], r9d
cmp rsi, r12
je 0x1400cb204
lea eax, [r9 + 0x24]
cmp word [rsi], ax
jne 0x1400cb1c0
mov bl, byte [rsi]
add rsi, 2
mov qword [rsp + 0x48], rsi
lea rdx, [rsp + 0x1b8]
lea rcx, [rsp + 0x48]
call fcn.140065de8
mov rcx, qword [rsp + 0x48]
cmp word [rcx], 0x65
je 0x1400cb1e9
cmp word [rcx], 0x66
je 0x1400cb1e9
cmp word [rcx], 0x67
jne 0x1400cb1ec
mov bpl, byte [rcx]
cmp eax, r12d
mov r9d, dword [rsp + 0x1b8]
jle 0x1400cb204
cmp r9d, r12d
jge 0x1400cb204
mov bl, r12b
mov r9d, r12d
lea rcx, [rsp + 0x100]
movapd xmm2, xmm8
movapd xmm1, xmm6
mov byte [rsp + 0x28], bpl
mov byte [rsp + 0x20], bl
call fcn.1400df970
lea rcx, [rsp + 0x30]
mov rdx, rax
call fcn.14006d6a8
lea rcx, [rsp + 0x100]
call fcn.1400591f8
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
call fcn.140018860
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ecx, dword [rsp + 0x58]
movsxd rbp, eax
mov eax, dword [rsp + 0x38]
lea eax, [rcx + rax + 1]
inc rbp
lea rcx, [rsp + 0x60]
movsxd rsi, eax
lea rdx, [rsi + rbp]
call fcn.140061798
mov r12, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x38]
lea rsi, [r12 + rsi*2]
mov qword [rsp + 0xf0], r12
test ecx, ecx
je 0x1400cb2a8
lea rdx, str.txt
mov r8d, 8
mov rcx, r12
call fcn.14001d614
mov ecx, dword [rsp + 0x38]
movsxd rax, dword [rsp + 0x58]
mov r13, rax
test eax, eax
je 0x1400cb2cd
movsxd rax, ecx
lea rdx, [0x140122e60]
mov r8d, 6
lea rcx, [r12 + rax*2]
call fcn.14001d614
movsxd rax, dword [rsp + 0x38]
mov ecx, 0x20
movsxd r8, ebp
add rax, r13
add r8, r8
mov rdx, rbx
mov word [r12 + rax*2], cx
mov rcx, rsi
call fcn.14001d614
mov rax, qword [rsp + 0x78]
xor ebx, ebx
cmp word [rax], bx
je 0x1400cb33d
mov rax, qword [rsp + 0xb0]
cmp word [rax], bx
je 0x1400cb317
mov r8, rsi
mov rdx, rax
mov rcx, r14
call fcn.140060abc
lea rcx, [rsp + 0x30]
call fcn.1400591f8
lea rcx, [rsp + 0x88]
call fcn.1400591f8
mov rsi, qword [rsp + 0x78]
mov r15, qword [rsp + 0x68]
jmp 0x1400ca70d
lea rcx, [rsp + 0x30]
call fcn.1400591f8
lea rcx, [rsp + 0x88]
call fcn.1400591f8
mov rdx, qword [rsp + 0x68]
cmp word [rdx], bx
je 0x1400cb378
mov r8, rsi
mov rcx, r14
call fcn.140060abc
lea rcx, [0x140136118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400cb3ca
lea rcx, [0x140136118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rsp + 0x1b8], rbx
cmp r15, rbx
je 0x1400cb3af
mov rdx, qword [rsp + 0x110]
lea rcx, [rsp + 0x1b8]
call fcn.14006d6f4
mov r12, qword [rsp + 0x1b8]
xor r8d, r8d
mov rdx, r12
mov rcx, r14
call fcn.1400c6048
lea rcx, [rsp + 0x1b8]
call fcn.1400591f8
mov rbp, qword [rsp + 0xc8]
lea rcx, [rsp + 0x50]
call fcn.1400591f8
lea rcx, [rsp + 0x60]
call fcn.1400591f8
cmp rbp, rbx
jle 0x1400cb47a
mov r13, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0x120]
dec rbp
mov rcx, rax
mov r8d, ebx
mov qword [rsp + 0xc8], rbp
mov r15, rax
mov qword [rsp + 0x68], rax
call fcn.14005ce80
mov rdi, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x108]
mov rcx, r12
mov r8d, edi
mov rsi, r12
mov qword [rsp + 0x78], r12
call fcn.14005cf30
mov r12d, dword [rsp + 0x38]
add rbx, r13
add rdi, r13
mov qword [rsp + 0xc0], rbx
xor ebx, ebx
mov qword [rsp + 0xd0], rdi
jmp 0x1400ca6bd
lea rcx, [rsp + 0x90]
call fcn.1400591f8
lea rcx, [rsp + 0x98]
call fcn.1400591f8
jmp 0x1400ca489
lea rcx, [rsp + 0x30]
movsd qword [rax], xmm6
cvttsd2si rbx, xmm6
call fcn.1400591f8
lea rcx, [rsp + 0x88]
call fcn.1400591f8
lea rcx, [0x140136118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x50]
call fcn.1400591f8
lea rcx, [rsp + 0x60]
call fcn.1400591f8
lea rcx, [rsp + 0x90]
call fcn.1400591f8
lea rcx, [rsp + 0x98]
call fcn.1400591f8
lea rcx, [rsp + 0x118]
call fcn.1400591f8
lea rcx, [rsp + 0x128]
call fcn.1400591f8
lea rcx, [rsp + 0x80]
call fcn.1400591f8
lea rcx, [rsp + 0xa0]
call fcn.1400591f8
lea r11, [rsp + 0x168]
mov rax, rbx
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret