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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x308
movzx eax, byte [rdx]
mov r13, rcx
mov r12, rdx
test r8b, 2
je 0x14002e18a
cmp al, 0x73
je 0x14002e268
test r8b, 4
je 0x14002e198
cmp al, 0x69
je 0x14002e308
test r8b, 0x10
je 0x14002e280
cmp al, 0x61
jne 0x14002e280
cmp byte [r12 + 1], 0x63
jne 0x14002e340
cmp byte [r12 + 2], 0x69
jne 0x14002e340
cmp byte [r12 + 3], 0x64
jne 0x14002e340
xor r14d, r14d
cmp qword [r12 + 0x10], 0x18
jne 0x14002e349
mov r15d, dword [r13 + 0x18]
test r15d, r15d
je 0x14002e877
imul rbx, qword [r13 + 0x40], 0x70
add rbx, qword [r13 + 0x20]
je 0x14002e24e
mov rcx, qword [r13 + 0x10]
lea rdx, [rsp + 0xa0]
mov r8d, 0x18
call qword [r13]
mov r14, rax
cmp rax, 0x18
jne 0x14002e24e
mov dword [rbx], 0x10
mov rax, qword [rsp + 0xa0]
mov qword [rbx + 8], rax
movss xmm0, dword [rsp + 0xa8]
movss dword [rbx + 0x10], xmm0
mov rax, qword [rsp + 0xac]
mov qword [rbx + 0x14], rax
movss xmm1, dword [rsp + 0xb4]
movss dword [rbx + 0x1c], xmm1
cmp qword [r12 + 0x10], r14
jne 0x14002e349
add qword [r13 + 0x40], 1
jmp 0x14002e349
cmp byte [rdx + 1], 0x6d
jne 0x14002e280
cmp byte [rdx + 2], 0x70
je 0x14002e7e0
nop dword [rax + rax]
test r8b, 8
je 0x14002e320
cmp al, 0x63
jne 0x14002e320
cmp byte [r12 + 1], 0x75
jne 0x14002e340
cmp byte [r12 + 2], 0x65
jne 0x14002e340
cmp byte [r12 + 3], 0x20
jne 0x14002e340
mov rax, qword [r12 + 0x10]
xor r14d, r14d
cmp rax, 3
jbe 0x14002e349
mov ebp, dword [r13 + 0x18]
test ebp, ebp
jne 0x14002f290
lea rdx, [rax - 4]
add dword [r13 + 0x28], 1
movabs rcx, 0xaaaaaaaaaaaaaaab
mov rax, rdx
mul rcx
mov rax, qword [r13 + 0x48]
shr rdx, 4
lea rdx, [rdx + rdx*2]
lea rax, [rax + rdx*8 + 7]
mov qword [r13 + 0x48], rax
jmp 0x14002e349
cmp byte [r12 + 1], 0x6e
jne 0x14002e320
cmp byte [r12 + 2], 0x73
je 0x14002e850
nop dword [rax]
test r8b, 0x20
je 0x14002e32e
cmp al, 0x62
je 0x14002e3b8
cmp al, 0x4c
jne 0x14002e360
cmp byte [r12 + 1], 0x49
je 0x14002e480
nop
and r8d, 1
jne 0x14002e388
xor r14d, r14d
mov rax, r14
add rsp, 0x308
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp al, 0x6c
jne 0x14002e340
cmp byte [r12 + 1], 0x69
jne 0x14002e340
cmp byte [r12 + 2], 0x73
jne 0x14002e340
cmp byte [r12 + 3], 0x74
jne 0x14002e340
jmp 0x14002e498
mov r8, qword [r12 + 0x10]
mov r9d, 1
mov rdx, r12
mov rcx, r13
add rsp, 0x308
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140039a40
cmp byte [r12 + 1], 0x65
jne 0x14002e340
cmp byte [r12 + 2], 0x78
jne 0x14002e340
cmp byte [r12 + 3], 0x74
jne 0x14002e340
mov rbp, qword [r12 + 0x10]
xor r14d, r14d
cmp rbp, 0x259
jbe 0x14002e349
mov edi, dword [r13 + 0x18]
mov rax, qword [r13]
mov rcx, qword [r13 + 0x10]
test edi, edi
jne 0x14002ed88
lea r15, [rsp + 0xa0]
mov byte [rsp + 0x1a0], 0
mov r8d, 0x100
mov rdx, r15
call rax
mov r14, rax
cmp rax, 0x100
jne 0x14002e349
xor ebx, ebx
cmp byte [rsp + 0xa0], 0
je 0x14002e446
add rbx, 1
cmp byte [r15 + rbx], 0
jne 0x14002e43b
mov byte [rsp + 0xc0], 0
mov rcx, qword [r13 + 0x10]
mov r8d, 0x20
mov rdx, r15
call qword [r13]
mov r14, rax
cmp rax, 0x20
je 0x14002f4aa
add r14, 0x100
jmp 0x14002e349
cmp byte [r12 + 2], 0x53
jne 0x14002e340
cmp byte [r12 + 3], 0x54
jne 0x14002e340
mov r14, qword [r12 + 0x10]
test r14, r14
je 0x14002e349
mov eax, r8d
mov qword [rsp + 0x20], r12
xor esi, esi
xor ebx, ebx
and eax, 0x40
lea r15, [rsp + 0x80]
lea rdi, [rsp + 0x7c]
mov dword [rsp + 0x2c], eax
mov eax, r8d
and eax, 0x80
mov dword [rsp + 0x48], eax
mov eax, r8d
and eax, 0x100
mov dword [rsp + 0x4c], eax
mov eax, r8d
and eax, 0x200
mov dword [rsp + 0x30], eax
mov eax, r8d
and eax, 0x400
mov dword [rsp + 0x34], eax
mov eax, r8d
and eax, 0x800
mov dword [rsp + 0x38], eax
mov eax, r8d
and eax, 0x1000
mov dword [rsp + 0x3c], eax
mov eax, r8d
and eax, 0x2000
mov dword [rsp + 0x50], eax
mov eax, r8d
and eax, 0x4000
mov dword [rsp + 0x40], eax
mov eax, r8d
and eax, 0x8000
mov dword [rsp + 0x54], eax
mov eax, r8d
and eax, 0x10000
mov dword [rsp + 0x44], eax
mov eax, r8d
not r8d
and eax, 0x20000
mov dword [rsp + 0x5c], eax
mov eax, r8d
and eax, 1
mov byte [rsp + 0x5b], al
jmp 0x14002e632
cmp byte [rsp + 0x80], 0x49
je 0x14002eae0
mov r10d, dword [rsp + 0x40]
test r10d, r10d
je 0x14002e8b8
cmp byte [rsp + 0x80], 0x49
je 0x14002eaf0
mov eax, dword [rsp + 0x44]
test eax, eax
jne 0x14002e5b0
mov ecx, dword [rsp + 0x5c]
test ecx, ecx
je 0x14002e5b0
cmp byte [rsp + 0x80], 0x49
je 0x14002eb28
nop dword [rax + rax]
test ebx, ebx
je 0x14002e888
cmp byte [rsp + 0x5b], 0
jne 0x14002e888
mov r9d, ebx
mov r8, rbp
mov rdx, r15
mov rcx, r13
call fcn.140039a40
lea rsi, [r14 + rax]
cmp rax, rbp
jae 0x14002e5fe
mov rdx, rbp
sub rdx, rax
mov rcx, qword [r13 + 0x10]
mov r8d, 1
call qword [r13 + 8]
test eax, eax
je 0x14002ec90
lea rsi, [rbp + r14]
and r12d, 1
je 0x14002e623
mov rcx, qword [r13 + 0x10]
mov r8d, 1
mov edx, 1
call qword [r13 + 8]
test eax, eax
je 0x14002ec90
add rsi, 1
mov rax, qword [rsp + 0x20]
cmp qword [rax + 0x10], rsi
jbe 0x14002ec90
mov rcx, qword [r13 + 0x10]
mov r8d, 4
mov rdx, r15
call qword [r13]
lea r14, [rax + rsi]
cmp rax, 4
jne 0x14002e349
movzx eax, byte [rsp + 0x80]
cmp al, 0x61
je 0x14002e8e0
cmp al, 0x49
jne 0x14002e673
cmp byte [rsp + 0x81], 0x4e
je 0x14002eab0
mov rcx, qword [r13 + 0x10]
mov r8d, 4
mov rdx, rdi
call qword [r13]
add r14, rax
cmp rax, 4
jne 0x14002e349
mov ebp, dword [rsp + 0x7c]
mov esi, dword [rsp + 0x2c]
mov r12, rbp
test esi, esi
je 0x14002e6ae
cmp byte [rsp + 0x80], 0x6c
je 0x14002e950
mov r11d, dword [rsp + 0x48]
test r11d, r11d
je 0x14002e6c8
movzx eax, byte [rsp + 0x80]
cmp al, 0x6e
je 0x14002e9c8
mov r10d, dword [rsp + 0x4c]
test r10d, r10d
je 0x14002e6e0
cmp byte [rsp + 0x80], 0x6c
je 0x14002e96d
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x14002e6f6
cmp byte [rsp + 0x80], 0x49
je 0x14002ea28
mov eax, dword [rsp + 0x34]
test eax, eax
je 0x14002e70c
cmp byte [rsp + 0x80], 0x49
je 0x14002ea88
mov eax, dword [rsp + 0x38]
test eax, eax
je 0x14002e722
cmp byte [rsp + 0x80], 0x49
je 0x14002ec80
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14002e560
mov r11d, dword [rsp + 0x50]
test r11d, r11d
je 0x14002e56e
cmp byte [rsp + 0x80], 0x49
jne 0x14002e56e
movzx eax, byte [rsp + 0x81]
cmp al, 0x43
je 0x14002e898
mov r11d, dword [rsp + 0x40]
test r11d, r11d
je 0x14002e8b8
mov r11d, dword [rsp + 0x54]
test r11d, r11d
je 0x14002e920
cmp al, 0x47
je 0x14002ec20
mov esi, dword [rsp + 0x44]
test esi, esi
je 0x14002e592
cmp al, 0x50
je 0x14002ec40
mov edx, dword [rsp + 0x5c]
test edx, edx
je 0x14002e5b0
cmp al, 0x54
jne 0x14002e5b0
cmp byte [rsp + 0x82], 0x52
jne 0x14002e5b0
cmp byte [rsp + 0x83], 0x4b
jne 0x14002e5b0
mov r8d, 0x20000
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rdx + 3], 0x6c
jne 0x14002e280
xor r14d, r14d
cmp qword [rdx + 0x10], 0x23
jbe 0x14002e349
mov eax, dword [rcx + 0x18]
test eax, eax
jne 0x14002f0eb
mov rcx, qword [rcx + 0x10]
mov r8d, 1
mov edx, 0x1c
call qword [r13 + 8]
test eax, eax
je 0x14002e349
lea r15, [rsp + 0xa0]
mov rcx, qword [r13 + 0x10]
mov r8d, 4
mov rdx, r15
call qword [r13]
mov r14, rax
cmp rax, 4
je 0x14002f4f3
add r14, 0x1c
jmp 0x14002e349
cmp byte [r12 + 3], 0x74
jne 0x14002e320
xor r14d, r14d
cmp qword [r12 + 0x10], 7
jne 0x14002e349
mov eax, dword [r13 + 0x18]
test eax, eax
jne 0x14002f44c
add dword [r13 + 0x28], 1
xor r14d, r14d
jmp 0x14002e349
mov rsi, r14
xor eax, eax
jmp 0x14002e5d8
cmp byte [rsp + 0x82], 0x4d
je 0x14002ed38
mov esi, dword [rsp + 0x40]
test esi, esi
jne 0x14002eb00
nop word [rax + rax]
mov r9d, dword [rsp + 0x54]
test r9d, r9d
je 0x14002e920
cmp byte [rsp + 0x80], 0x49
jne 0x14002e58a
movzx eax, byte [rsp + 0x81]
jmp 0x14002e776
cmp byte [rsp + 0x81], 0x64
jne 0x14002e673
cmp byte [rsp + 0x82], 0x74
jne 0x14002e673
cmp byte [rsp + 0x83], 0x6c
jne 0x14002e673
mov ebx, 3
mov rsi, r14
jmp 0x14002e623
mov r8d, dword [rsp + 0x44]
test r8d, r8d
je 0x14002e592
cmp byte [rsp + 0x80], 0x49
jne 0x14002e5b0
movzx eax, byte [rsp + 0x81]
jmp 0x14002e78a
movzx edx, byte [rsp + 0x81]
cmp dl, 0x61
je 0x14002eb38
mov eax, dword [rsp + 0x4c]
test eax, eax
je 0x14002e6e0
cmp byte [rsp + 0x81], 0x74
jne 0x14002e6e0
cmp byte [rsp + 0x82], 0x78
jne 0x14002e6e0
cmp byte [rsp + 0x83], 0x74
jne 0x14002e6e0
cmp rbp, 0x13
jbe 0x14002e888
cmp dword [r13 + 0x18], 0
jne 0x14002f543
lea rax, [rbp - 0x14]
add dword [r13 + 0x28], 1
add qword [r13 + 0x48], rax
mov rdx, rbp
mov rsi, r14
jmp 0x14002e5e3
movzx edx, byte [rsp + 0x81]
cmp dl, 0x6f
jne 0x14002e6e0
movzx ecx, byte [rsp + 0x82]
cmp cl, 0x74
jne 0x14002e6e0
movzx r8d, byte [rsp + 0x83]
cmp r8b, 0x65
jne 0x14002e6e0
cmp rbp, 3
jbe 0x14002e888
mov r9d, dword [r13 + 0x18]
test r9d, r9d
jne 0x14002f3f6
lea rax, [rbp - 4]
add dword [r13 + 0x28], 1
add qword [r13 + 0x48], rax
jmp 0x14002e9b9
movzx edx, byte [rsp + 0x81]
mov eax, edx
cmp dl, 0x53
je 0x14002eb68
mov ecx, dword [rsp + 0x34]
test ecx, ecx
jne 0x14002ea90
mov r8d, dword [rsp + 0x38]
test r8d, r8d
je 0x14002e722
mov eax, edx
cmp al, 0x4e
je 0x14002ebb8
mov r9d, dword [rsp + 0x3c]
test r9d, r9d
je 0x14002e72e
cmp al, 0x41
je 0x14002ebe0
mov r10d, dword [rsp + 0x50]
test r10d, r10d
jne 0x14002e752
jmp 0x14002e56e
movzx eax, byte [rsp + 0x81]
cmp al, 0x43
je 0x14002eb90
mov r8d, dword [rsp + 0x38]
test r8d, r8d
jne 0x14002ea53
jmp 0x14002e722
cmp byte [rsp + 0x82], 0x46
jne 0x14002e673
cmp byte [rsp + 0x83], 0x4f
jne 0x14002e673
mov ebx, 2
jmp 0x14002e90f
movzx eax, byte [rsp + 0x81]
jmp 0x14002ea69
movzx eax, byte [rsp + 0x81]
cmp al, 0x43
jne 0x14002e768
cmp byte [rsp + 0x82], 0x52
je 0x14002ed10
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x14002e920
mov eax, 0x43
jmp 0x14002e77e
movzx eax, byte [rsp + 0x81]
jmp 0x14002e79e
movzx ecx, byte [rsp + 0x82]
cmp cl, 0x62
jne 0x14002e961
movzx eax, byte [rsp + 0x83]
cmp al, 0x6c
jne 0x14002e961
mov r8d, 0x6c
jmp 0x14002e9fd
cmp byte [rsp + 0x82], 0x46
je 0x14002ec98
mov ecx, dword [rsp + 0x34]
test ecx, ecx
je 0x14002ea43
jmp 0x14002ea98
cmp byte [rsp + 0x82], 0x4f
je 0x14002ecc0
mov r9d, dword [rsp + 0x38]
test r9d, r9d
jne 0x14002ea5b
jmp 0x14002e722
cmp byte [rsp + 0x82], 0x41
je 0x14002ece8
mov r10d, dword [rsp + 0x3c]
test r10d, r10d
je 0x14002e72e
jmp 0x14002ea71
cmp byte [rsp + 0x82], 0x52
jne 0x14002ea71
cmp byte [rsp + 0x83], 0x54
jne 0x14002ea71
mov r8d, 0x1000
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rsp + 0x82], 0x4e
je 0x14002ed60
mov edx, dword [rsp + 0x44]
test edx, edx
je 0x14002e592
jmp 0x14002e792
cmp byte [rsp + 0x82], 0x52
jne 0x14002e5b0
cmp byte [rsp + 0x83], 0x44
jne 0x14002e5b0
mov r8d, 0x10000
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
movzx edx, byte [rsp + 0x81]
jmp 0x14002ea51
mov r14, rsi
jmp 0x14002e349
cmp byte [rsp + 0x83], 0x54
jne 0x14002eb76
mov r8d, 0x200
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rsp + 0x83], 0x50
jne 0x14002eb9e
mov r8d, 0x400
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rsp + 0x83], 0x4d
jne 0x14002ebc6
mov r8d, 0x800
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rsp + 0x83], 0x44
jne 0x14002eb0e
mov r8d, 0x4000
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rsp + 0x83], 0x54
jne 0x14002e8a6
mov r8d, 0x2000
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
cmp byte [rsp + 0x83], 0x52
jne 0x14002ec2e
mov r8d, 0x8000
mov rdx, rbp
mov rcx, r13
call fcn.14003bcb0
lea rsi, [rax + r14]
jmp 0x14002e5d8
lea r15, [rsp + 0xa0]
mov rbx, qword [r13 + 0x20]
mov rsi, qword [r13 + 0x40]
mov r8d, 0x25a
mov rdx, r15
call rax
mov r14, rax
cmp rax, 0x25a
jne 0x14002e24e
imul rsi, rsi, 0x70
xor r8d, r8d
xor edx, edx
add rbx, rsi
mov dword [rbx], 0x20
cmp byte [rsp + 0xa0], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x80], r15
mov qword [rsp + 0x88], 0x25a
jne 0x14002edf9
jmp 0x14002ee3f
cmp r8, 0x100
je 0x14002ee04
add r8, 1
cmp byte [r15 + r8], 0
jne 0x14002edf0
mov rdx, qword [r13 + 0x38]
lea rax, [rdx + r8 + 1]
mov qword [r13 + 0x38], rax
mov eax, r8d
cmp r8d, 8
jae 0x14002f6d0
test r8b, 4
jne 0x14002f795
test eax, eax
je 0x14002ee3a
movzx ecx, byte [r15]
mov byte [rdx], cl
test al, 2
jne 0x14002f771
mov byte [rdx + r8], 0
mov qword [rbx + 8], rdx
mov rax, qword [rsp + 0x90]
lea rdx, [rax + 0x100]
cmp rdx, qword [rsp + 0x88]
ja 0x14002ee67
mov qword [rsp + 0x90], rdx
mov rax, rdx
add rax, qword [rsp + 0x80]
xor edx, edx
xor r8d, r8d
cmp byte [rax], 0
mov rsi, rax
jne 0x14002ee86
jmp 0x14002eea9
cmp rdx, 0x20
je 0x14002ee90
add rdx, 1
cmp byte [rsi + rdx], 0
jne 0x14002ee80
mov r8, qword [r13 + 0x38]
mov ecx, edx
lea rax, [r8 + rdx + 1]
mov rdi, r8
mov qword [r13 + 0x38], rax
rep movsb byte [rdi], byte [rsi]
mov byte [r8 + rdx], 0
mov qword [rbx + 0x10], r8
mov rax, qword [rsp + 0x90]
lea rdx, [rax + 0x20]
cmp rdx, qword [rsp + 0x88]
ja 0x14002eece
mov qword [rsp + 0x90], rdx
mov rax, rdx
add rax, qword [rsp + 0x80]
xor edx, edx
xor r8d, r8d
cmp byte [rax], 0
mov rsi, rax
jne 0x14002eeee
jmp 0x14002ef11
cmp rdx, 0x20
je 0x14002eef8
add rdx, 1
cmp byte [rsi + rdx], 0
jne 0x14002eee8
mov r8, qword [r13 + 0x38]
mov ecx, edx
lea rax, [r8 + rdx + 1]
mov rdi, r8
mov qword [r13 + 0x38], rax
rep movsb byte [rdi], byte [rsi]
mov byte [r8 + rdx], 0
mov qword [rbx + 0x18], r8
mov rax, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
lea rcx, [rax + 0x20]
cmp rcx, rdx
ja 0x14002ef39
mov qword [rsp + 0x90], rcx
mov rax, rcx
mov r9, rdx
mov ecx, 0xa
lea r10, [rbx + 0x20]
mov r8, qword [rsp + 0x80]
sub r9, rax
mov rdi, r10
lea r10, [rbx + 0x2a]
mov r15d, 4
cmp r9, 0xa
lea rsi, [r8 + rax]
cmova r9, rcx
add rax, r9
mov ecx, r9d
mov r9, rdx
rep movsb byte [rdi], byte [rsi]
sub r9, rax
mov ecx, 8
lea rsi, [r8 + rax]
cmp r9, 8
mov qword [rsp + 0x90], rax
mov rdi, r10
mov r10, rdx
cmova r9, rcx
add rax, r9
mov ecx, r9d
lea r9, [rsp + 0x7c]
rep movsb byte [rdi], byte [rsi]
sub r10, rax
lea r11, [r8 + rax]
mov rdi, r9
cmp r10, 4
mov qword [rsp + 0x90], rax
mov rsi, r11
cmovbe r15, r10
add rax, r15
mov ecx, r15d
rep movsb byte [rdi], byte [rsi]
mov qword [rsp + 0x90], rax
cmp r10, 3
jbe 0x14002f769
mov r11d, dword [rsp + 0x7c]
sub rdx, rax
mov r10d, 4
lea rsi, [r8 + rax]
mov rdi, r9
cmp rdx, 4
cmovbe r10, rdx
mov ecx, r10d
add r10, rax
rep movsb byte [rdi], byte [rsi]
mov qword [rsp + 0x90], r10
cmp rdx, 3
jbe 0x14002f762
mov eax, dword [rsp + 0x7c]
shl rax, 0x20
lea r15, [rsp + 0x80]
lea rdx, [rbx + 0x40]
add rax, r11
mov rcx, r15
mov qword [rbx + 0x38], rax
call fcn.14002df80
mov r8, qword [r13 + 0x38]
mov r9d, 0x40
lea rax, [r8 + 0x40]
mov qword [r13 + 0x38], rax
mov qword [rbx + 0x58], r8
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
mov rdx, rcx
sub rdx, rax
cmp rdx, 0x40
cmova rdx, r9
test r8, r8
je 0x14002f749
add rax, qword [rsp + 0x80]
mov ecx, edx
mov rdi, r8
mov rsi, rax
rep movsb byte [rdi], byte [rsi]
add qword [rsp + 0x90], rdx
lea rdx, [rbx + 0x60]
mov rcx, r15
call fcn.14002df80
lea rdx, [rbx + 0x62]
mov rcx, r15
call fcn.14002df80
lea rdx, [rbx + 0x64]
mov rcx, r15
call fcn.14002df80
lea rdx, [rbx + 0x66]
mov rcx, r15
call fcn.14002df80
lea rdx, [rbx + 0x68]
mov rcx, r15
call fcn.14002df80
mov r8, rbp
sub r8, 0x25a
jne 0x14002f70c
mov qword [rbx + 0x48], 0
mov dword [rbx + 0x50], 0
jmp 0x14002e24e
mov rax, qword [rcx + 0x40]
lea rbx, [rax*8]
sub rbx, rax
shl rbx, 4
add rbx, qword [rcx + 0x20]
je 0x14002e24e
mov rcx, qword [rcx + 0x10]
lea rdx, [rsp + 0xa0]
mov r8d, 0x24
call qword [r13]
mov r14, rax
cmp rax, 0x24
jne 0x14002e24e
mov dword [rbx], 2
mov rax, qword [rsp + 0xa0]
mov r8d, 0x18
xor edx, edx
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0xa8]
mov qword [rbx + 0x10], rax
mov rax, qword [rsp + 0xb0]
mov qword [rbx + 0x18], rax
mov rax, qword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbc]
mov qword [rbx + 0x20], rax
mov eax, dword [rsp + 0xc0]
mov dword [rbx + 0x28], eax
mov rax, qword [r12 + 0x10]
sub rax, 0x24
div r8
cmp rcx, rax
jne 0x14002e24e
mov rax, qword [r13 + 0x38]
imul rdx, rcx, 0x18
mov rcx, rax
and ecx, 7
je 0x14002f1aa
sub rax, rcx
add rax, 8
mov qword [r13 + 0x38], rax
add rdx, rax
mov qword [r13 + 0x38], rdx
cmp dword [rbx + 0x24], 0
mov qword [rbx + 0x30], rax
je 0x14002f25a
xor esi, esi
lea r15, [rsp + 0x80]
jmp 0x14002f23c
mov rcx, qword [rbx + 0x30]
mov r8d, dword [rsp + 0x80]
mov eax, esi
add esi, 1
lea rdx, [rax + rax*2]
mov dword [rcx + rdx*8], r8d
lea rax, [rdx*8]
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsp + 0x84]
mov dword [rdx + rax + 4], ecx
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsp + 0x88]
mov dword [rdx + rax + 8], ecx
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsp + 0x8c]
mov dword [rdx + rax + 0xc], ecx
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsp + 0x90]
mov dword [rdx + rax + 0x10], ecx
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rsp + 0x94]
mov dword [rdx + rax + 0x14], ecx
cmp dword [rbx + 0x24], esi
jbe 0x14002f25a
mov rcx, qword [r13 + 0x10]
mov r8d, 0x18
mov rdx, r15
call qword [r13]
add r14, rax
cmp rax, 0x18
je 0x14002f1cb
mov eax, dword [rbx + 0x28]
test eax, eax
je 0x14002e24e
mov rdx, qword [r13 + 0x38]
add rax, rdx
mov qword [r13 + 0x38], rax
mov r8d, dword [rbx + 0x28]
mov qword [rbx + 0x38], rdx
mov rcx, qword [r13 + 0x10]
call qword [r13]
add r14, rax
jmp 0x14002e24e
mov rax, qword [r13 + 0x40]
lea rbx, [rax*8]
sub rbx, rax
shl rbx, 4
add rbx, qword [r13 + 0x20]
je 0x14002e24e
mov rcx, qword [r13 + 0x10]
lea rdx, [rsp + 0x80]
mov r8d, 4
call qword [r13]
mov r14, rax
cmp rax, 4
jne 0x14002e24e
mov dword [rbx], 8
mov ecx, dword [rsp + 0x80]
mov r8d, 0x18
xor edx, edx
mov dword [rbx + 8], ecx
mov rax, qword [r12 + 0x10]
sub rax, 4
div r8
cmp rcx, rax
jne 0x14002e24e
mov rax, qword [r13 + 0x38]
imul rdx, rcx, 0x18
mov rcx, rax
and ecx, 7
je 0x14002f318
sub rax, rcx
add rax, 8
mov qword [r13 + 0x38], rax
add rdx, rax
mov qword [r13 + 0x38], rdx
cmp dword [rbx + 8], 0
mov qword [rbx + 0x10], rax
je 0x14002e24e
xor esi, esi
lea r15, [rsp + 0xa0]
mov rcx, qword [r13 + 0x10]
mov r8d, 0x18
mov rdx, r15
call qword [r13]
add r14, rax
cmp rax, 0x18
jne 0x14002e24e
mov eax, esi
mov rdx, qword [rbx + 0x10]
mov ecx, dword [rsp + 0xa0]
add esi, 1
imul rax, rax, 0x18
mov dword [rdx + rax], ecx
mov rdx, qword [rbx + 0x10]
mov ecx, dword [rsp + 0xa4]
mov dword [rdx + rax + 4], ecx
mov rdx, qword [rbx + 0x10]
movzx ecx, byte [rsp + 0xa8]
mov byte [rdx + rax + 8], cl
mov rdx, qword [rbx + 0x10]
movzx ecx, byte [rsp + 0xa9]
mov byte [rdx + rax + 9], cl
mov rdx, qword [rbx + 0x10]
movzx ecx, byte [rsp + 0xaa]
mov byte [rdx + rax + 0xa], cl
mov rdx, qword [rbx + 0x10]
movzx ecx, byte [rsp + 0xab]
mov byte [rdx + rax + 0xb], cl
mov rdx, qword [rbx + 0x10]
mov ecx, dword [rsp + 0xac]
mov dword [rdx + rax + 0xc], ecx
mov rdx, qword [rbx + 0x10]
mov ecx, dword [rsp + 0xb0]
mov dword [rdx + rax + 0x10], ecx
mov rdx, qword [rbx + 0x10]
mov ecx, dword [rsp + 0xb4]
mov dword [rdx + rax + 0x14], ecx
cmp dword [rbx + 8], esi
ja 0x14002f337
jmp 0x14002e24e
mov esi, pe_nt_image_headers64
cmp al, 0x6c
je 0x14002f630
mov rax, qword [r13 + 0x20]
mov rcx, qword [r13 + 0x10]
lea rdx, [rsp + 0xa0]
mov r8d, 4
mov qword [rsp + 0x60], rax
mov rax, qword [r13 + 0x40]
mov qword [rsp + 0x68], rax
call qword [r13]
cmp rax, 4
je 0x14002f5dd
cmp rbp, rax
jne 0x14002ec6d
add qword [r13 + 0x40], 1
lea rsi, [r14 + rax]
jmp 0x14002e5fe
imul rbx, qword [r13 + 0x40], 0x70
add rbx, qword [r13 + 0x20]
je 0x14002e24e
mov rcx, qword [r13 + 0x10]
lea rdx, [rsp + 0xa0]
mov r8d, 7
call qword [r13]
mov r14, rax
cmp rax, 7
jne 0x14002e24e
mov dword [rbx], 4
mov eax, dword [rsp + 0xa0]
mov dword [rbx + 8], eax
movzx eax, word [rsp + 0xa4]
mov word [rbx + 0xc], ax
movzx eax, byte [rsp + 0xa6]
mov byte [rbx + 0xe], al
jmp 0x14002e24e
xor esi, esi
cmp byte [rsp + 0xa0], 0
je 0x14002f4c1
add rsi, 1
cmp byte [r15 + rsi], 0
jne 0x14002f4b6
mov byte [rsp + 0xc0], 0
mov rcx, qword [r13 + 0x10]
mov r8d, 0x20
mov rdx, r15
call qword [r13]
mov r14, rax
cmp rax, 0x20
je 0x14002f653
add r14, 0x120
jmp 0x14002e349
mov rax, qword [r12 + 0x10]
mov ecx, 0x18
xor edx, edx
mov ebx, dword [rsp + 0xa0]
mov r14d, 0x20
sub rax, 0x24
div rcx
cmp rbx, rax
jne 0x14002e349
mov rcx, qword [r13 + 0x10]
mov r8d, 4
mov rdx, r15
call qword [r13]
mov r14, rax
cmp rax, 4
je 0x14002f6ac
add r14, 0x20
jmp 0x14002e349
mov rax, qword [r13 + 0x40]
mov rsi, qword [r13 + 0x20]
lea rdx, [rsp + 0xa0]
mov r8d, 0x14
mov rcx, qword [r13 + 0x10]
mov qword [rsp + 0x60], rax
call qword [r13]
cmp rax, 0x14
jne 0x14002f435
imul rdx, qword [rsp + 0x60], 0x70
mov r8d, r12d
add rdx, rsi
mov dword [rdx], 0x100
mov rcx, qword [rsp + 0xa0]
mov qword [rdx + 8], rcx
mov ecx, dword [rsp + 0xa8]
mov dword [rdx + 0x10], ecx
mov rcx, qword [rsp + 0xac]
mov qword [rdx + 0x14], rcx
sub r8d, 0x14
je 0x14002f781
lea eax, [r12 - 0x15]
mov r8d, r8d
mov dword [rdx + 0x1c], eax
mov r9, qword [r13 + 0x38]
lea rax, [r9 + r8]
mov qword [r13 + 0x38], rax
mov qword [rdx + 0x20], r9
mov rdx, r9
mov rcx, qword [r13 + 0x10]
call qword [r13]
add rax, 0x14
jmp 0x14002f435
imul rdx, qword [rsp + 0x68], 0x70
add rdx, qword [rsp + 0x60]
mov r8d, r12d
mov dword [rdx], esi
mov ecx, dword [rsp + 0xa0]
mov dword [rdx + 8], ecx
sub r8d, 4
je 0x14002f698
lea eax, [r12 - 5]
mov r8d, r8d
mov dword [rdx + 0xc], eax
mov r9, qword [r13 + 0x38]
lea rax, [r9 + r8]
mov qword [r13 + 0x38], rax
mov qword [rdx + 0x10], r9
mov rdx, r9
mov rcx, qword [r13 + 0x10]
call qword [r13]
add rax, 4
jmp 0x14002f435
cmp dl, 0x61
jne 0x14002f403
cmp cl, 0x62
jne 0x14002f403
cmp r8b, 0x6c
mov eax, 0x40
cmove esi, eax
jmp 0x14002f403
xor edx, edx
cmp byte [rsp + 0xa0], 0
je 0x14002f66a
add rdx, 1
cmp byte [r15 + rdx], 0
jne 0x14002f65f
mov rax, qword [r12 + 0x10]
mov rcx, qword [r13 + 0x48]
mov r14d, 0x140
add dword [r13 + 0x28], 1
lea rax, [rcx + rax - 0x217]
add rax, rbx
add rax, rsi
add rax, rdx
mov qword [r13 + 0x48], rax
jmp 0x14002e349
mov dword [rdx + 0xc], 0
mov qword [rdx + 0x10], 0
jmp 0x14002f43e
imul rax, rbx, 0x18
mov edx, dword [rsp + 0xa0]
add dword [r13 + 0x28], 1
mov r14d, 0x24
lea rax, [rax + rdx + 7]
add qword [r13 + 0x48], rax
jmp 0x14002e349
mov rax, qword [rsp + 0xa0]
lea rdi, [rdx + 8]
mov rsi, r15
and rdi, 0xfffffffffffffff8
mov qword [rdx], rax
mov eax, r8d
mov rcx, qword [r15 + rax - 8]
mov qword [rdx + rax - 8], rcx
mov rax, rdx
sub rax, rdi
sub rsi, rax
add eax, r8d
shr eax, 3
mov ecx, eax
rep movsq qword [rdi], qword [rsi]
jmp 0x14002ee3a
mov rdx, qword [r13 + 0x38]
lea rax, [rdx + rbp - 0x259]
mov qword [r13 + 0x38], rax
mov qword [rbx + 0x48], rdx
mov rcx, qword [r13 + 0x10]
call qword [r13]
mov rdx, qword [rbx + 0x48]
lea r14, [rax + 0x25a]
xor eax, eax
jmp 0x14002f73b
add rax, 1
cmp byte [rdx + rax], 0
jne 0x14002f737
mov dword [rbx + 0x50], eax
jmp 0x14002e24e
add rax, rdx
cmp rcx, rax
jb 0x14002f08b
mov qword [rsp + 0x90], rax
jmp 0x14002f08b
xor eax, eax
jmp 0x14002f015
xor r11d, r11d
jmp 0x14002efdf
movzx ecx, word [r15 + rax - 2]
mov word [rdx + rax - 2], cx
jmp 0x14002ee3a
mov dword [rdx + 0x1c], 0
mov qword [rdx + 0x20], 0
jmp 0x14002f43e
mov ecx, dword [r15]
mov dword [rdx], ecx
mov ecx, dword [r15 + rax - 4]
mov dword [rdx + rax - 4], ecx
jmp 0x14002ee3a