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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
mov dword [rsp + 0x70], 0
lea rcx, [rsp + 0x80]
call qword [sym.imp.mfc140.dll_Ordinal_316]
nop
mov rax, qword [0x1400e1018]
mov r8d, dword [rax - 0x10]
add r8d, 0xfffffffc
lea rdx, [rsp + 0x88]
lea rcx, [0x1400e1018]
call qword [sym.imp.mfc140.dll_Ordinal_8025]
mov rbx, rax
mov rcx, rax
call qword [sym.imp.mfc140.dll_Ordinal_5691]
mov rdx, rax
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140.dll_Ordinal_305]
mov dword [rsp + 0x70], 1
lea r9, str._2.csv
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [r9 + rcx], 0
jne 0x140022aa0
mov rdx, qword [rbx]
mov dword [rsp + 0x20], ecx
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140.dll_Ordinal_2917]
lea rdx, [rsp + 0x78]
lea rcx, [0x1400e1008]
call qword [sym.imp.mfc140.dll_Ordinal_1504]
nop
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140.dll_Ordinal_1032]
nop
lea rcx, [rsp + 0x88]
call qword [sym.imp.mfc140.dll_Ordinal_1032]
lea rdx, [0x1400a5a94]
mov rcx, qword [0x1400e1008]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [0x1400e0f70], rax
test rax, rax
je 0x140022fdd
mov edx, 0x242
lea rcx, [rsp + 0x80]
call qword [sym.imp.mfc140.dll_Ordinal_8128]
mov r8, qword [rsp + 0x80]
lea rdx, [0x1400a63e4]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
mov rdi, qword [0x1400e0fb8]
xor r14d, r14d
add rdi, 0x38
lea r15, [0x140000000]
lea r12, [0x1400e0e00]
nop dword [rax + rax]
cmp dword [rdi - 0x30], 0
je 0x140022fae
movsxd rbx, dword [rdi]
mov ebp, dword [rdi + 4]
movsxd rsi, dword [rdi + 8]
mov r9, qword [r15 + rbx*8 + 0xde080]
mov r8d, r14d
lea rdx, str._d__s_
mov rcx, qword [0x1400e0f70]
call fcn.140020120
test ebx, ebx
je 0x140022bb6
cmp ebx, 6
je 0x140022bb6
mov r8, qword [r15 + rsi*8 + 0xde0e0]
lea rdx, [0x1400a5478]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 1
jne 0x140022bea
lea eax, [rbp - 1]
cmp eax, ebx
jbe 0x140022c2b
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
jmp 0x140022c62
cmp ebx, 2
jne 0x140022c15
cmp ebp, 1
je 0x140022c2b
cmp ebp, ebx
jne 0x140022c4a
cmp esi, 0xa
je 0x140022c2b
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
jmp 0x140022c9d
lea eax, [rbx - 3]
cmp eax, 2
ja 0x140022c21
test esi, esi
jne 0x140022c2b
cmp ebx, 7
jne 0x140022c4a
cmp esi, 1
jne 0x140022c4a
movsxd r8, dword [rdi + 0xc]
mov r8, qword [r15 + r8*8 + 0xde148]
lea rdx, [0x1400a5478]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 1
jne 0x140022c68
test ebp, ebp
jne 0x140022c7e
jmp 0x140022c9d
cmp ebx, 3
jne 0x140022c74
cmp esi, 1
je 0x140022c7e
jmp 0x140022c9d
cmp ebx, 7
jne 0x140022c9d
cmp esi, 1
jne 0x140022c9d
movsxd r8, dword [rdi + 0x10]
mov r8, qword [r15 + r8*8 + 0xde160]
lea rdx, [0x1400a5478]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
mov rcx, qword [rdi - 8]
mov rdx, r12
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [rdx], al
lea rcx, [rcx + 1]
lea rdx, [rdx + 1]
test al, al
jne 0x140022cb0
call fcn.14002acd0
mov r8, r12
lea rdx, [0x1400a641c]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 1
jne 0x140022d2a
lea eax, [rbp - 1]
cmp eax, ebx
ja 0x140022d2a
movss xmm3, dword [rdi + 0x40]
cvtps2pd xmm3, xmm3
movss xmm2, dword [rdi + 0x3c]
cvtps2pd xmm2, xmm2
movq r9, xmm3
movq r8, xmm2
lea rdx, str._.2f____.2f
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
jmp 0x140022d47
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 1
jbe 0x140022d47
cmp ebx, 7
jne 0x140022d67
movss xmm2, dword [rdi + 0x18]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.3f
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 1
ja 0x140022da8
call fcn.140029da0
test eax, eax
je 0x140022da8
movss xmm2, dword [rdi + 0x1c]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.2f
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
mov rcx, qword [0x1400e0f70]
cmp ebx, 2
jne 0x140022df5
movss xmm2, dword [rdi + 0x20]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.1f
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
jmp 0x140022e06
lea rdx, [0x1400a6418]
call fcn.140020120
cmp ebx, 6
jne 0x140022e26
movss xmm2, dword [rdi + 0x24]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.2f
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 1
jbe 0x140022e63
cmp ebx, 7
je 0x140022e63
movss xmm2, dword [rdi + 0x28]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, [0x1400a644c]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea eax, [rbx - 4]
cmp eax, 1
ja 0x140022e9e
movss xmm2, dword [rdi + 0x2c]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.1f
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea eax, [rbx - 3]
cmp eax, 2
ja 0x140022ed9
movss xmm2, dword [rdi + 0x30]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.2f
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
cmp ebx, 3
je 0x140022ef6
cmp ebx, 6
jne 0x140022f16
movss xmm2, dword [rdi + 0x34]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, [0x1400a644c]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
mov rcx, qword [0x1400e0f70]
cmp ebx, 4
jne 0x140022f63
movss xmm2, dword [rdi + 0x38]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str._.1f
call fcn.140020120
lea rdx, [0x1400a6418]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
jmp 0x140022f9b
lea rdx, [0x1400a6418]
call fcn.140020120
lea eax, [rbx - 1]
cmp eax, 1
jbe 0x140022f7c
cmp ebx, 7
jne 0x140022f9b
movsxd r8, dword [rdi + 4]
mov r8, qword [r15 + r8*8 + 0xde0c0]
lea rdx, [0x1400a5478]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
lea rdx, [0x1400a5a98]
mov rcx, qword [0x1400e0f70]
call fcn.140020120
inc r14d
add rdi, 0xe8
cmp r14d, 0x100
jl 0x140022b60
mov rcx, qword [0x1400e0f70]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov qword [0x1400e0f70], 0
lea rcx, [rsp + 0x80]
call qword [sym.imp.mfc140.dll_Ordinal_1032]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret