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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1e8
movdqa xmmword [rsp + 0x1d0], xmm9
movdqa xmmword [rsp + 0x1c0], xmm8
movdqa xmmword [rsp + 0x1b0], xmm7
movdqa xmmword [rsp + 0x1a0], xmm6
mov rdi, rdx
mov r13, rcx
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], r8
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdi
mov qword [rsp + 0x148], r8
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], r8
movabs rax, 0x7b0000007b
mov qword [rsp + 0x160], rax
mov byte [rsp + 0x168], 1
mov word [rsp + 0x170], 1
lea rcx, [rsp + 0xe0]
call fcn.1400345a0
test byte [rsp + 0xe0], 1
je 0x1400330e2
mov rsi, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x130]
sub rsi, rcx
add rdi, rcx
mov qword [rsp + 0x130], rax
mov rbx, qword [r13 + 8]
mov rax, qword [rbx]
mov r14, qword [rbx + 0x10]
sub rax, r14
cmp rax, rsi
jb 0x140034456
mov rcx, qword [rbx + 8]
add rcx, r14
mov rdx, rdi
mov r8, rsi
call fcn.1403125c0
add r14, rsi
mov qword [rbx + 0x10], r14
jmp 0x14003311f
cmp byte [rsp + 0x171], 0
jne 0x14003311f
mov byte [rsp + 0x171], 1
mov rdi, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x138]
sub rsi, rdi
setne al
or al, byte [rsp + 0x170]
cmp al, 1
jne 0x14003311f
add rdi, qword [rsp + 0x140]
jmp 0x1400330b0
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x120], rax
movdqu xmm0, xmmword [rsp + 0x130]
movdqu xmm1, xmmword [rsp + 0x140]
movups xmm2, xmmword [rsp + 0x150]
movups xmm3, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x110], xmm3
movaps xmmword [rsp + 0x100], xmm2
movdqa xmmword [rsp + 0xf0], xmm1
movdqa xmmword [rsp + 0xe0], xmm0
cmp byte [rsp + 0x121], 0
je 0x1400331b3
movaps xmm6, xmmword [rsp + 0x1a0]
movaps xmm7, xmmword [rsp + 0x1b0]
movaps xmm8, xmmword [rsp + 0x1c0]
movaps xmm9, xmmword [rsp + 0x1d0]
add rsp, 0x1e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r15, [rsp + 0xf0]
lea rbx, [rsp + 0x38]
mov qword [rsp + 0x68], 0
movdqa xmm6, xmmword [0x14031eb10]
movd xmm7, dword [0x14031eb20]
movdqa xmm8, xmmword [str.hor_with_newlineauthor_with_newlabout_with_newline]
movdqa xmm9, xmmword [0x14031eb00]
jmp 0x1400332ab
mov qword [rsp + 0x30], r11
cmp dword [r12], 0x656d616e
je 0x140033458
mov rcx, qword [r13 + 8]
lea rax, [rsp + 0x190]
mov qword [rsp + 0xb0], rax
lea rax, [0x14010cf30]
mov qword [rsp + 0xb8], rax
lea rax, [0x1403769f8]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 2
mov qword [rsp + 0x58], 0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 1
mov rdx, rbx
call fcn.1400351d0
mov r11, qword [rsp + 0x30]
sub rbp, r11
mov rsi, qword [r13 + 8]
mov rax, qword [rsi]
mov rdi, qword [rsi + 0x10]
sub rax, rdi
cmp rax, rbp
jb 0x1400337c3
add r12, r11
mov rcx, qword [rsi + 8]
add rcx, rdi
mov rdx, r12
mov r8, rbp
call fcn.1403125c0
add rdi, rbp
mov qword [rsi + 0x10], rdi
cmp byte [rsp + 0x121], 0
jne 0x14003317d
mov r12, qword [rsp + 0xf0]
mov rcx, rbx
mov rdx, r15
call fcn.1400345a0
test byte [rsp + 0x38], 1
je 0x1400332f0
mov rbp, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xe0]
sub rbp, rcx
add r12, rcx
mov qword [rsp + 0xe0], rax
jmp 0x140033333
cmp byte [rsp + 0x121], 0
jne 0x14003317d
mov byte [rsp + 0x121], 1
mov r12, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0xe8]
sub rbp, r12
setne al
or al, byte [rsp + 0x120]
cmp al, 1
jne 0x14003317d
add r12, qword [rsp + 0xf0]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x50], rbp
mov byte [rsp + 0x60], 1
movabs rax, 0x7d0000007d
mov qword [rsp + 0x58], rax
lea rcx, [rsp + 0xb0]
mov rdx, rbx
call fcn.1400345a0
test byte [rsp + 0xb0], 1
je 0x14003329d
mov rax, qword [rsp + 0xb8]
mov r11, qword [rsp + 0xc0]
mov qword [rsp + 0x190], r12
mov qword [rsp + 0x198], rax
cmp rax, 4
je 0x1400331f0
cmp rax, 3
jne 0x1400333d3
movzx ecx, word [r12]
xor ecx, 0x6962
movzx edx, byte [r12 + 2]
xor edx, 0x6e
or dx, cx
je 0x1400336c1
cmp rax, 7
sete cl
jmp 0x140033404
cmp rax, 7
sete cl
jne 0x1400334d0
mov edx, dword [r12]
mov r8d, 0x73726576
xor edx, r8d
mov r8d, dword [r12 + 3]
mov r9d, 0x6e6f6973
xor r8d, r9d
or r8d, edx
je 0x140033830
cmp rax, 5
sete dl
cmp rax, 0xd
je 0x140033566
cmp rax, 0x12
jne 0x1400335be
movdqu xmm0, xmmword [r12]
pcmpeqb xmm0, xmm6
movzx r8d, word [r12 + 0x10]
movd xmm1, r8d
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb r8d, xmm1
cmp r8d, 0xffff
jne 0x1400335be
mov rcx, r13
xor edx, edx
jmp 0x140033978
mov rax, qword [r13 + 0x10]
lea rcx, [rax + 0x120]
lea rdx, [rax + 0x238]
lea r8, [rax + 0x118]
lea r9, [rax + 0x230]
xor r10d, r10d
cmp r10, qword [rax + 0x110]
cmovo rcx, rdx
cmovno r9, r8
mov rdx, qword [r9]
mov r8, qword [rcx]
mov rcx, rbx
call fcn.1400347f0
mov rdi, qword [rsp + 0x48]
test rdi, rdi
js 0x14003448e
mov rsi, qword [rsp + 0x40]
je 0x14003372a
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rdi
call fcn.14027d060
test rax, rax
jne 0x14003372f
jmp 0x14003447c
cmp rax, 0x13
je 0x140033a33
cmp rax, 0xe
je 0x14003399b
cmp rax, 6
jne 0x140033aae
mov edx, dword [r12]
mov r8d, 0x68747561
xor edx, r8d
movzx r8d, word [r12 + 4]
xor r8d, 0x726f
or r8d, edx
jne 0x140033404
mov rax, qword [r13 + 0x10]
mov rbx, qword [rax + 0x250]
test rbx, rbx
je 0x140033cd9
mov rdi, qword [rax + 0x258]
test rdi, rdi
js 0x14003451b
mov qword [rsp + 0x30], r11
mov rsi, qword [r13 + 8]
je 0x140033fe5
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rdi
call fcn.14027d060
test rax, rax
je 0x140034548
mov r14, rax
jmp 0x140033feb
mov r8, qword [r12]
movabs r9, 0x65732d74756f6261
xor r8, r9
mov r9, qword [r12 + 5]
movabs r10, 0x6e6f69746365732d
xor r9, r10
or r9, r8
je 0x140033973
mov r8, qword [r12]
movabs r9, 0x65682d6567617375
xor r8, r9
mov r9, qword [r12 + 5]
movabs r10, 0x676e69646165682d
xor r9, r10
or r9, r8
je 0x140033bcf
test dl, dl
je 0x1400335e2
mov edx, dword [r12]
mov r8d, 0x67617375
xor edx, r8d
movzx r8d, byte [r12 + 4]
xor r8d, 0x65
or r8d, edx
je 0x140033907
cmp rax, 8
jne 0x1400335fc
movabs rdx, 0x736772612d6c6c61
cmp qword [r12], rdx
je 0x140033988
test cl, cl
je 0x140033621
mov ecx, dword [r12]
mov edx, 0x6974706f
xor ecx, edx
mov edx, dword [r12 + 3]
mov r8d, 0x736e6f69
xor edx, r8d
or edx, ecx
je 0x140033b6d
cmp rax, 0xb
mov qword [rsp + 0x30], r11
jne 0x1400337ef
mov rax, qword [r12]
movabs rcx, 0x6e6f697469736f70
xor rax, rcx
mov rcx, qword [r12 + 3]
movabs rdx, 0x736c616e6f697469
xor rcx, rdx
or rcx, rax
je 0x140033ce3
mov rax, qword [r12]
movabs rcx, 0x616d6d6f63627573
xor rax, rcx
mov rcx, qword [r12 + 3]
movabs rdx, 0x73646e616d6d6f63
xor rcx, rdx
or rcx, rax
je 0x140033d88
mov rax, qword [r12]
movabs rcx, 0x682d65726f666562
xor rax, rcx
mov rcx, qword [r12 + 3]
movabs rdx, 0x706c65682d65726f
xor rcx, rdx
or rcx, rax
jne 0x140033203
mov rcx, r13
call fcn.140039d90
jmp 0x140033262
mov rax, qword [r13 + 0x10]
xor ecx, ecx
cmp rcx, qword [rax + 0x128]
mov qword [rsp + 0x30], r11
jno 0x1400338a4
mov rdx, qword [rax + 0x230]
mov r8, qword [rax + 0x238]
mov rcx, rbx
call fcn.1400347f0
mov rdi, qword [rsp + 0x48]
test rdi, rdi
js 0x1400344a0
mov rsi, qword [rsp + 0x40]
je 0x140033d43
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rdi
call fcn.14027d060
test rax, rax
je 0x1400344be
mov r15, rdi
jmp 0x140033d4b
mov eax, 1
mov qword [rsp + 0x98], rax
mov rcx, rax
mov rdx, rsi
mov r8, rdi
call fcn.1403125c0
cmp qword [rsp + 0x38], 0
je 0x14003375f
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov r14, r15
mov rsi, qword [r13 + 8]
mov rax, qword [rsi]
mov rbx, qword [rsi + 0x10]
sub rax, rbx
cmp rax, rdi
jb 0x140033dce
mov rcx, qword [rsi + 8]
add rcx, rbx
mov r15, qword [rsp + 0x98]
mov rdx, r15
mov r8, rdi
call fcn.1403125c0
add rbx, rdi
mov qword [rsi + 0x10], rbx
test rdi, rdi
je 0x1400337b1
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
lea rbx, [rsp + 0x38]
mov r11, qword [rsp + 0x30]
mov r15, r14
jmp 0x140033267
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rsi
mov rdx, rdi
mov r8, rbp
mov rdi, r11
call fcn.140316740
mov r11, rdi
mov rdi, qword [rsi + 0x10]
jmp 0x140033281
cmp rax, 3
jne 0x140033b2f
movzx eax, word [r12]
xor eax, 0x6174
movzx ecx, byte [r12 + 2]
xor ecx, 0x62
or cx, ax
jne 0x140033203
mov rcx, qword [r13 + 8]
mov r8d, 2
lea rdx, [0x1403585b0]
call fcn.1400556f0
jmp 0x140033262
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax + 0x260]
test rcx, rcx
je 0x140033847
mov rdi, qword [rax + 0x268]
test rcx, rcx
mov rbx, qword [rax + 0x270]
cmovne rbx, rcx
test rbx, rbx
je 0x140033cd9
test rcx, rcx
jne 0x14003386a
mov rdi, qword [rax + 0x278]
test rdi, rdi
js 0x1400344af
mov qword [rsp + 0x30], r11
mov rsi, qword [r13 + 8]
je 0x140033e15
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rdi
call fcn.14027d060
test rax, rax
je 0x1400344e7
mov r14, rax
jmp 0x140033e1b
mov rbx, qword [rax + 0x130]
mov r8, qword [rax + 0x138]
cmp r8, 0xf
movabs rsi, 0xdfdfdfdfdfdfdfdf
movabs rdi, 0x101010101010101
movabs r14, 0x8080808080808080
ja 0x140033cba
test r8, r8
je 0x14003417e
xor ecx, ecx
nop word cs:[rax + rax]
cmp byte [rbx + rcx], 0x20
je 0x1400341d1
inc rcx
cmp r8, rcx
jne 0x1400338f0
jmp 0x14003417e
mov r14, r11
mov rdi, qword [r13 + 8]
mov rdx, qword [r13 + 0x20]
mov rcx, rbx
call fcn.1400631f0
mov rbx, qword [rsp + 0x38]
mov rax, rbx
neg rax
mov r8, qword [rsp + 0x48]
mov eax, 0
cmovo r8, rax
mov rsi, qword [rsp + 0x40]
mov eax, 1
cmovo rsi, rax
mov rcx, rdi
mov rdx, rsi
call fcn.1400556f0
shl rbx, 1
test rbx, rbx
je 0x140033966
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rbx, [rsp + 0x38]
mov r11, r14
jmp 0x140033267
mov rcx, r13
mov dl, 1
mov rsi, r11
call fcn.140034e80
mov r11, rsi
jmp 0x140033267
mov rcx, r13
mov rsi, r11
call fcn.1400351f0
mov r11, rsi
jmp 0x140033267
mov rdx, qword [r12]
movabs r8, 0x732d726f68747561
xor rdx, r8
mov r8, qword [r12 + 6]
movabs r9, 0x6e6f69746365732d
xor r8, r9
or r8, rdx
jne 0x140033404
mov rax, qword [r13 + 0x10]
mov rsi, qword [rax + 0x250]
test rsi, rsi
je 0x140033267
mov rbx, qword [rax + 0x258]
mov rdi, qword [r13 + 8]
mov rdx, qword [rdi + 0x10]
cmp qword [rdi], rdx
je 0x14003407c
mov rax, qword [rdi + 8]
mov byte [rax + rdx], 0xa
inc rdx
mov qword [rdi + 0x10], rdx
test rbx, rbx
js 0x14003452a
mov r14, r11
je 0x140033ef0
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rbx
call fcn.14027d060
test rax, rax
jne 0x140033ef5
jmp 0x140034562
movdqu xmm0, xmmword [r12]
pcmpeqb xmm0, xmm9
movdqu xmm1, xmmword [r12 + 3]
pcmpeqb xmm1, xmm8
pand xmm1, xmm0
pmovmskb edx, xmm1
cmp edx, 0xffff
jne 0x140033404
mov rax, qword [r13 + 0x10]
mov rsi, qword [rax + 0x250]
test rsi, rsi
je 0x140033267
mov rbx, qword [rax + 0x258]
test rbx, rbx
js 0x140034539
mov r14, r11
mov rdi, qword [r13 + 8]
je 0x140033f54
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rbx
call fcn.14027d060
test rax, rax
jne 0x140033f59
jmp 0x14003457c
cmp rax, 5
sete dl
jne 0x14003340b
mov edx, dword [r12]
mov r8d, 0x756f6261
xor edx, r8d
movzx r8d, byte [r12 + 4]
xor r8d, 0x74
or r8d, edx
jne 0x1400335c2
mov rax, qword [r13 + 0x10]
cmp byte [r13 + 0x29], 0
je 0x140033e82
lea rdx, [rax + 0x158]
lea rcx, [rax + 0x140]
xor r9d, r9d
cmp r9, qword [rax + 0x140]
seto r8b
cmovo rcx, r9
mov qword [rsp + 0x68], 0
cmp r9, qword [rax + 0x158]
seto al
cmovno rcx, rdx
test al, r8b
jne 0x140033267
jmp 0x140033e9a
cmp rax, 0xa
jne 0x140033203
mov rax, qword [r12]
movabs rcx, 0x65682d7265746661
xor rax, rcx
movzx ecx, word [r12 + 8]
xor rcx, 0x706c
or rcx, rax
jne 0x140033203
mov rcx, r13
call fcn.140039be0
jmp 0x140033262
mov rdi, r11
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + 0x88]
imul r8, qword [rax + 0x90], 0x288
add r8, rdx
mov rcx, rbx
call fcn.140032680
mov rsi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov rcx, r13
mov rdx, rsi
lea r9, [0x140037710]
call fcn.1400379e0
cmp qword [rsp + 0x38], 0
je 0x140033bc7
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov r11, rdi
jmp 0x140033267
mov rsi, qword [r13 + 8]
mov rax, qword [r13 + 0x18]
lea rcx, [rax + 0x1c]
mov rdx, qword [rax + 0x1c]
mov rax, qword [rax + 0x22]
mov qword [rsp + 0x186], rax
mov qword [rsp + 0x180], rdx
mov byte [rsp + 0x38], 3
mov byte [rsp + 0x3c], 3
mov byte [rsp + 0x40], 3
mov word [rsp + 0x44], 0
mov rdx, rbx
mov rdi, r11
call fcn.140035060
test al, al
lea rcx, str.e_0me_1me_2me_3me_4m
mov edx, 1
cmovne rcx, rdx
xor al, 1
movzx eax, al
shl eax, 2
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x180]
mov qword [rsp + 0xb0], rax
lea rax, [0x140011db0]
mov qword [rsp + 0xb8], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0xc0], rax
lea rax, [0x14010cf30]
mov qword [rsp + 0xc8], rax
lea rax, [0x140355eb0]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 2
mov qword [rsp + 0x58], 0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 2
mov rcx, rsi
mov rdx, rbx
call fcn.1400351d0
mov r11, rdi
jmp 0x140033267
lea rcx, [rbx + 7]
and rcx, 0xfffffffffffffff8
sub rcx, rbx
jne 0x140033da7
mov r15, r8
lea rdx, [r8 - 0x10]
xor ecx, ecx
jmp 0x140034130
lea rbx, [rsp + 0x38]
jmp 0x140033267
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + 0x88]
imul r8, qword [rax + 0x90], 0x288
add r8, rdx
mov rcx, rbx
call fcn.1400320a0
mov rsi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov rcx, r13
mov rdx, rsi
lea r9, [0x140038b30]
call fcn.1400379e0
cmp qword [rsp + 0x38], 0
je 0x140033262
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140033262
mov eax, 1
xor r15d, r15d
mov qword [rsp + 0xa8], rax
mov rcx, rax
mov rdx, rsi
mov r8, rdi
call fcn.1403125c0
cmp qword [rsp + 0x38], 0
je 0x140033d7b
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rsi, qword [rsp + 0xa8]
jmp 0x1400343a1
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + 0xb8]
mov r8, qword [rax + 0xc0]
mov rcx, r13
call fcn.140038b60
jmp 0x140033262
xor edx, edx
nop dword [rax]
cmp byte [rbx + rdx], 0x20
je 0x1400341d1
inc rdx
cmp rcx, rdx
jne 0x140033db0
mov r15, r8
lea rdx, [r8 - 0x10]
jmp 0x140034160
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call fcn.140316740
mov rbx, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, rbx
mov r15, qword [rsp + 0x98]
mov rdx, r15
mov r8, rdi
call fcn.1403125c0
add rbx, rdi
mov qword [rsi + 0x10], rbx
jmp 0x14003379f
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.1403125c0
mov rax, qword [rsi]
mov rbx, qword [rsi + 0x10]
sub rax, rbx
cmp rax, rdi
mov qword [rsp + 0xd8], r14
jb 0x140034014
mov rcx, qword [rsi + 8]
add rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.1403125c0
add rbx, rdi
mov qword [rsi + 0x10], rbx
test rdi, rdi
je 0x1400343f5
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, r14
call qword [sym.imp.kernel32.dll_HeapFree]
lea rbx, [rsp + 0x38]
jmp 0x140033262
xor ecx, ecx
cmp rcx, qword [rax + 0x140]
jo 0x140033267
add rax, 0x140
mov rcx, rax
mov r14, r11
mov rdi, qword [r13 + 8]
mov rdx, qword [rcx + 8]
mov r8, qword [rcx + 0x10]
mov rcx, rbx
call fcn.14000f310
mov rcx, rbx
call fcn.140055cc0
mov rsi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov rcx, rdi
mov rdx, rsi
call fcn.1400556f0
cmp qword [rsp + 0x38], 0
je 0x140033ee8
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov r11, r14
jmp 0x140033267
mov eax, 1
mov qword [rsp + 0x88], rax
mov rcx, rax
mov rdx, rsi
mov r8, rbx
call fcn.1403125c0
mov rax, qword [rdi]
mov rsi, qword [rdi + 0x10]
sub rax, rsi
cmp rax, rbx
jb 0x1400340a8
mov rcx, qword [rdi + 8]
add rcx, rsi
mov rdx, qword [rsp + 0x88]
mov r8, rbx
call fcn.1403125c0
add rsi, rbx
mov qword [rdi + 0x10], rsi
test rbx, rbx
je 0x140033fc0
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, qword [rsp + 0x88]
jmp 0x140033fb6
mov eax, 1
mov qword [rsp + 0x90], rax
mov rcx, rax
mov rdx, rsi
mov r8, rbx
call fcn.1403125c0
mov rax, qword [rdi]
mov rsi, qword [rdi + 0x10]
sub rax, rsi
cmp rax, rbx
jb 0x1400340ec
mov rcx, qword [rdi + 8]
add rcx, rsi
mov rdx, qword [rsp + 0x90]
mov r8, rbx
call fcn.1403125c0
add rsi, rbx
mov qword [rdi + 0x10], rsi
test rbx, rbx
je 0x140033fc0
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, qword [rsp + 0x90]
call qword [sym.imp.kernel32.dll_HeapFree]
mov rsi, qword [rdi + 0x10]
cmp qword [rdi], rsi
lea rbx, [rsp + 0x38]
je 0x140034053
mov rax, qword [rdi + 8]
mov byte [rax + rsi], 0xa
inc rsi
mov qword [rdi + 0x10], rsi
mov r11, r14
jmp 0x140033267
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.1403125c0
mov rax, qword [rsi]
mov rbx, qword [rsi + 0x10]
sub rax, rbx
cmp rax, rdi
mov qword [rsp + 0xd0], r14
jae 0x140033e44
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call fcn.140316740
mov rbx, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.1403125c0
add rbx, rdi
mov qword [rsi + 0x10], rbx
jmp 0x140033e66
mov qword [rsp + 0x20], 1
mov r8d, 1
mov r9d, 1
mov rcx, rdi
mov rdx, rsi
call fcn.140316740
mov rsi, qword [rdi + 0x10]
jmp 0x140033fce
mov qword [rsp + 0x20], 1
mov r8d, 1
mov r9d, 1
mov rcx, rdi
mov r14, r11
call fcn.140316740
mov r11, r14
mov rdx, qword [rdi + 0x10]
jmp 0x1400339f3
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call fcn.140316740
mov rsi, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
add rcx, rsi
mov rdx, qword [rsp + 0x88]
mov r8, rbx
call fcn.1403125c0
add rsi, rbx
mov qword [rdi + 0x10], rsi
jmp 0x140033f41
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call fcn.140316740
mov rsi, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
add rcx, rsi
mov rdx, qword [rsp + 0x90]
mov r8, rbx
call fcn.1403125c0
add rsi, rbx
mov qword [rdi + 0x10], rsi
jmp 0x140033fa5
mov r8, qword [rbx + rcx]
mov r9, qword [rbx + rcx + 8]
mov r10, r8
xor r10, rsi
mov r11, r9
xor r11, rsi
add r11, rdi
or r11, r9
add r10, rdi
or r10, r8
and r10, r11
not r10
test r10, r14
jne 0x140034165
add rcx, 0x10
cmp rcx, rdx
jbe 0x140034130
mov r8, r15
cmp rcx, r15
je 0x14003417e
nop dword [rax]
cmp byte [rbx + rcx], 0x20
je 0x1400341d1
inc rcx
cmp r8, rcx
jne 0x140034170
mov rdx, qword [rax + 0x230]
mov r8, qword [rax + 0x238]
lea rcx, [rsp + 0x38]
call fcn.1400347f0
mov rdi, qword [rsp + 0x48]
test rdi, rdi
js 0x1400344d8
mov rsi, qword [rsp + 0x40]
je 0x140034361
movzx eax, byte [0x14042efe0]
xor ecx, ecx
mov rdx, rdi
call fcn.14027d060
test rax, rax
je 0x140034501
mov r15, rdi
jmp 0x140034369
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x178], r8
mov qword [rsp + 0x50], r8
movabs rax, 0x2000000020
mov qword [rsp + 0x58], rax
mov byte [rsp + 0x60], 1
mov esi, 1
xor edi, edi
xor r15d, r15d
jmp 0x140034257
mov rsi, qword [rsp + 0x78]
mov byte [rsi + rdi], 0x2d
inc rdi
mov qword [rsp + 0x80], rdi
mov r15, r13
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x38]
call fcn.1400345a0
cmp dword [rsp + 0xb0], 1
jne 0x14003431d
mov r14, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xc0]
sub r14, r15
mov rax, qword [rsp + 0x70]
sub rax, rdi
cmp rax, r14
jb 0x1400342ec
add r15, rbx
add rsi, rdi
mov rcx, rsi
mov rdx, r15
mov r8, r14
call fcn.1403125c0
add rdi, r14
mov qword [rsp + 0x80], rdi
cmp qword [rsp + 0x70], rdi
jne 0x140034240
mov qword [rsp + 0x20], 1
mov r8d, 1
mov r9d, 1
lea rcx, [rsp + 0x70]
mov rdx, rdi
call fcn.140316740
mov rdi, qword [rsp + 0x80]
jmp 0x140034240
mov qword [rsp + 0x20], 1
mov r9d, 1
lea rcx, [rsp + 0x70]
mov rdx, rdi
mov r8, r14
call fcn.140316740
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
jmp 0x140034297
mov r8, qword [rsp + 0x178]
sub r8, r15
mov rax, qword [rsp + 0x70]
sub rax, rdi
cmp rax, r8
jb 0x140034422
mov r13, qword [rsp + 0x68]
add rbx, r15
add rsi, rdi
mov rcx, rsi
mov rdx, rbx
mov rsi, r8
call fcn.1403125c0
add rdi, rsi
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
jmp 0x1400343a1
mov eax, 1
xor r15d, r15d
mov qword [rsp + 0xa0], rax
mov rcx, rax
mov rdx, rsi
mov r8, rdi
call fcn.1403125c0
cmp qword [rsp + 0x38], 0
je 0x140034399
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rsi, qword [rsp + 0xa0]
mov rbx, qword [r13 + 8]
mov rax, qword [rbx]
mov r14, qword [rbx + 0x10]
sub rax, r14
cmp rax, rdi
jb 0x1400343ff
mov rcx, qword [rbx + 8]
add rcx, r14
mov rdx, rsi
mov r8, rdi
call fcn.1403125c0
add r14, rdi
mov qword [rbx + 0x10], r14
test r15, r15
je 0x1400343e4
mov rcx, qword [0x14042ef38]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x68], 0
lea r15, [rsp + 0xf0]
lea rbx, [rsp + 0x38]
jmp 0x140033262
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.140316740
mov r14, qword [rbx + 0x10]
jmp 0x1400343b4
mov qword [rsp + 0x20], 1
mov r9d, 1
lea rcx, [rsp + 0x70]
mov rdx, rdi
mov rsi, r8
call fcn.140316740
mov r8, rsi
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
jmp 0x140034339
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rbx
mov rdx, r14
mov r8, rsi
call fcn.140316740
mov r14, qword [rbx + 0x10]
jmp 0x1400330c7
mov eax, 1
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x98], rdi
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x98]
call fcn.140313140
xor ecx, ecx
mov rdx, qword [rsp + 0xa8]
call fcn.140313140
xor ecx, ecx
mov rdx, qword [rsp + 0xd8]
call fcn.140313140
mov ecx, 1
mov qword [rsp + 0xa8], rdi
mov rdx, qword [rsp + 0xa8]
call fcn.140313140
xor ecx, ecx
mov rdx, qword [rsp + 0xa0]
call fcn.140313140
mov ecx, 1
mov qword [rsp + 0xd8], rdi
mov rdx, qword [rsp + 0xd8]
call fcn.140313140
mov ecx, 1
mov qword [rsp + 0xa0], rdi
mov rdx, qword [rsp + 0xa0]
call fcn.140313140
xor ecx, ecx
mov rdx, qword [rsp + 0xd0]
call fcn.140313140
xor ecx, ecx
mov rdx, qword [rsp + 0x88]
call fcn.140313140
xor ecx, ecx
mov rdx, qword [rsp + 0x90]
call fcn.140313140
mov ecx, 1
mov qword [rsp + 0xd0], rdi
mov rdx, qword [rsp + 0xd0]
call fcn.140313140
mov ecx, 1
mov qword [rsp + 0x88], rbx
mov rdx, qword [rsp + 0x88]
call fcn.140313140
mov ecx, 1
mov qword [rsp + 0x90], rbx
mov rdx, qword [rsp + 0x90]
call fcn.140313140
int3