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

Disassembly:
test r9d, r9d
je 0x140029f92
mov r11, rsp
push r13
sub rsp, 0x120
mov rax, qword [0x140050008]
xor rax, rsp
mov qword [rsp + 0xe0], rax
mov r10d, dword [rcx + 0x14]
xor eax, eax
mov qword [r11 + 0x10], rbx
mov r13, r8
mov ebx, dword [rcx + 4]
mov dword [rsp + 0x24], r10d
mov r10d, dword [rcx + 0x18]
mov qword [r11 - 0x10], rbp
mov ebp, dword [rcx + 0x38]
mov dword [rsp + 0x28], r10d
mov r10d, dword [rcx + 0x1c]
mov qword [r11 - 0x18], rsi
mov esi, dword [rcx + 0xc]
mov dword [rsp + 0x2c], r10d
mov r10d, dword [rcx + 0x20]
mov qword [r11 - 0x20], rdi
mov edi, dword [rcx + 8]
mov dword [rsp + 0x30], r10d
mov r10d, dword [rcx + 0x24]
mov dword [rsp + 0x34], r10d
mov r10d, dword [rcx + 0x28]
mov qword [r11 - 0x28], r12
mov dword [rsp + 0x38], r10d
mov r10d, dword [rcx + 0x2c]
mov qword [r11 - 0x30], r14
mov dword [rsp + 0x3c], r10d
mov r10d, dword [rcx + 0x34]
mov qword [rsp + 0x60], r8
mov r8d, dword [rcx]
mov qword [rsp + 0x88], rax
mov eax, dword [rcx + 0x10]
mov qword [r11 - 0x38], r15
mov r11d, dword [rcx + 0x30]
mov qword [rsp + 0x90], rcx
mov ecx, dword [rcx + 0x3c]
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x48], r9d
mov qword [rsp + 0x58], rdx
mov dword [rsp + 0x1c], r8d
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x50], edi
mov dword [rsp + 0x54], esi
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x10], r11d
mov dword [rsp + 0x18], r10d
mov dword [rsp + 0x40], ebp
nop word [rax + rax]
cmp r9d, 0x40
jae 0x140029b7b
test r9d, r9d
je 0x140029b55
lea rax, [rsp + 0xa0]
mov r8d, r9d
sub rdx, rax
lea rcx, [rsp + 0xa0]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x140029b40
mov r8d, dword [rsp + 0x1c]
mov eax, dword [rsp + 0x20]
lea rdx, [rsp + 0xa0]
mov qword [rsp + 0x88], r13
lea r13, [rsp + 0xa0]
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x58], rdx
mov ecx, dword [rsp + 0x24]
mov r15d, ebx
mov r13d, dword [rsp + 0x30]
mov r14d, r8d
mov edx, dword [rsp + 0x34]
mov r12d, edi
mov r8d, dword [rsp + 0x38]
mov ebp, esi
mov r9d, dword [rsp + 0x3c]
mov ebx, r10d
mov edi, dword [rsp + 0x40]
mov esi, dword [rsp + 0x44]
mov dword [rsp], eax
mov eax, dword [rsp + 0x28]
mov r10d, dword [rsp]
mov dword [rsp + 4], eax
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x14], eax
mov qword [rsp + 0x68], 0xa
jmp 0x140029bdb
mov r9d, dword [rsp]
mov r8d, ecx
mov ecx, dword [rsp + 0xc]
add r12d, dword [rsp + 4]
add r15d, ecx
add ebp, dword [rsp + 0x14]
add r14d, r10d
xor r11d, r14d
xor esi, ebp
rol esi, 0x10
xor ebx, r15d
add r9d, esi
rol r11d, 0x10
add r13d, r11d
rol ebx, 0x10
add edx, ebx
xor edi, r12d
rol edi, 0x10
mov eax, r13d
xor eax, r10d
add r8d, edi
rol eax, 0xc
add r14d, eax
xor r11d, r14d
rol r11d, 8
add r13d, r11d
mov r10d, r13d
xor r10d, eax
mov eax, edx
xor eax, ecx
rol r10d, 7
rol eax, 0xc
add r15d, eax
xor ebx, r15d
rol ebx, 8
add edx, ebx
mov ecx, edx
xor ecx, eax
mov eax, r8d
xor eax, dword [rsp + 4]
rol eax, 0xc
add r12d, eax
rol ecx, 7
add r14d, ecx
xor edi, r12d
rol edi, 8
add r8d, edi
mov dword [rsp + 8], r8d
xor r8d, eax
mov eax, r9d
rol r8d, 7
xor eax, dword [rsp + 0x14]
add r15d, r8d
rol eax, 0xc
xor r11d, r15d
add ebp, eax
rol r11d, 0x10
xor esi, ebp
rol esi, 8
add r9d, esi
xor esi, r14d
mov dword [rsp], r9d
xor r9d, eax
mov eax, dword [rsp + 8]
rol esi, 0x10
add eax, esi
rol r9d, 7
mov dword [rsp + 8], eax
xor eax, ecx
mov ecx, dword [rsp + 8]
rol eax, 0xc
add r14d, eax
xor esi, r14d
rol esi, 8
add ecx, esi
mov dword [rsp + 0xc], ecx
xor dword [rsp + 0xc], eax
mov eax, dword [rsp]
rol dword [rsp + 0xc], 7
add eax, r11d
mov dword [rsp], eax
xor eax, r8d
rol eax, 0xc
add r15d, eax
mov r8d, dword [rsp]
add r12d, r9d
add ebp, r10d
xor ebx, r12d
xor edi, ebp
rol ebx, 0x10
add r13d, ebx
rol edi, 0x10
add edx, edi
xor r11d, r15d
rol r11d, 8
add r8d, r11d
mov dword [rsp + 4], r8d
xor dword [rsp + 4], eax
mov eax, r13d
rol dword [rsp + 4], 7
xor eax, r9d
rol eax, 0xc
add r12d, eax
mov dword [rsp], r8d
xor ebx, r12d
rol ebx, 8
add r13d, ebx
mov r9d, r13d
xor r9d, eax
mov eax, edx
xor eax, r10d
rol r9d, 7
rol eax, 0xc
add ebp, eax
mov dword [rsp + 0x14], r9d
xor edi, ebp
rol edi, 8
add edx, edi
mov r10d, edx
xor r10d, eax
rol r10d, 7
sub qword [rsp + 0x68], 1
jne 0x140029bd0
mov eax, dword [rsp + 0x4c]
add eax, r15d
mov dword [rsp + 0x14], r13d
mov r13d, dword [rsp + 0x54]
mov r15d, dword [rsp + 0xc]
add r13d, ebp
add r15d, dword [rsp + 0x24]
mov ebp, dword [rsp + 0x2c]
add ebp, r9d
mov dword [rsp + 0x7c], ebx
mov ebx, dword [rsp + 0x38]
mov r9d, dword [rsp + 0x7c]
add ebx, ecx
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 8], r11d
mov r11d, dword [rsp + 0x3c]
add r11d, r8d
mov dword [rsp + 0x80], edi
mov r8d, dword [rsp + 0x80]
add r8d, dword [rsp + 0x40]
mov dword [rsp + 0x74], r14d
mov r14d, dword [rsp + 4]
add r14d, dword [rsp + 0x28]
mov dword [rsp + 0x70], esi
add ecx, dword [rsp + 0x70]
mov esi, dword [rsp + 0x14]
add esi, dword [rsp + 0x30]
mov dword [rsp], edx
mov rdx, qword [rsp + 0x58]
mov edi, dword [rsp]
add edi, dword [rsp + 0x34]
xor eax, dword [rdx + 4]
xor r13d, dword [rdx + 0xc]
xor r15d, dword [rdx + 0x14]
xor r14d, dword [rdx + 0x18]
xor ebp, dword [rdx + 0x1c]
xor esi, dword [rdx + 0x20]
xor edi, dword [rdx + 0x24]
xor ebx, dword [rdx + 0x28]
xor r11d, dword [rdx + 0x2c]
xor r8d, dword [rdx + 0x38]
xor ecx, dword [rdx + 0x3c]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x50]
add eax, r12d
mov dword [rsp + 0x58], r13d
xor eax, dword [rdx + 8]
mov r13d, dword [rsp + 0x18]
add r9d, r13d
xor r9d, dword [rdx + 0x34]
mov r12d, dword [rsp + 0x20]
mov dword [rsp + 0x68], eax
add r12d, r10d
xor r12d, dword [rdx + 0x10]
lea eax, [r13 + 1]
mov r10d, dword [rsp + 8]
add r10d, dword [rsp + 0x10]
xor r10d, dword [rdx + 0x30]
add dword [rsp + 0x10], 1
cmovne eax, r13d
mov r13, qword [rsp + 0x60]
mov dword [rsp + 0x18], eax
mov eax, dword [rsp + 0x74]
add eax, dword [rsp + 0x1c]
xor eax, dword [rdx]
mov dword [r13], eax
mov eax, dword [rsp + 0x78]
mov dword [r13 + 4], eax
mov eax, dword [rsp + 0x68]
mov dword [r13 + 8], eax
mov rax, qword [rsp + 0x60]
mov r13d, dword [rsp + 0x58]
mov dword [rax + 0xc], r13d
mov r13, rax
mov dword [rax + 0x10], r12d
mov dword [rax + 0x14], r15d
mov dword [rax + 0x18], r14d
mov dword [rax + 0x1c], ebp
mov dword [rax + 0x20], esi
mov dword [rax + 0x24], edi
mov dword [rax + 0x28], ebx
mov dword [rax + 0x34], r9d
mov r9d, dword [rsp + 0x48]
mov dword [rax + 0x2c], r11d
mov dword [rax + 0x30], r10d
mov dword [rax + 0x38], r8d
mov dword [rax + 0x3c], ecx
cmp r9d, 0x40
jbe 0x140029efc
mov r10d, dword [rsp + 0x18]
add r9d, 0xffffffc0
mov r11d, dword [rsp + 0x10]
add r13, 0x40
mov r8d, dword [rsp + 0x1c]
add rdx, 0x40
mov ebx, dword [rsp + 0x4c]
mov edi, dword [rsp + 0x50]
mov esi, dword [rsp + 0x54]
mov eax, dword [rsp + 0x20]
mov qword [rsp + 0x58], rdx
mov dword [rsp + 0x48], r9d
mov qword [rsp + 0x60], r13
jmp 0x140029b10
mov r15, qword [rsp + 0xf0]
lea eax, [r9 - 1]
mov r14, qword [rsp + 0xf8]
mov r12, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x110]
mov rbp, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x138]
cmp eax, 0x3e
ja 0x140029f61
mov rcx, qword [rsp + 0x88]
mov rdx, r9
sub r13, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + r13]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140029f50
mov rax, qword [rsp + 0x90]
mov ecx, dword [rsp + 0x10]
mov r10d, dword [rsp + 0x18]
mov dword [rax + 0x30], ecx
mov dword [rax + 0x34], r10d
mov rcx, qword [rsp + 0xe0]
xor rcx, rsp
call fcn.140031880
add rsp, 0x120
pop r13
ret