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

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x3c8
cmp word [rcx + 0xf0], 0x104
mov r14, rcx
jb 0x100141940
mov eax, 1
jmp 0x100142743
mov rax, qword [rcx + 0x148]
xor r11d, r11d
mov dword [rsp + 0xb8], 2
mov ecx, dword [rax]
lea r8d, [r11 + 3]
lea edi, [r11 + 1]
and ecx, 0xfffff
mov r12d, r11d
mov dword [rsp + 0x428], r11d
mov dword [rsp + 0xb0], r11d
mov dword [rsp + 0xb4], edi
mov qword [rsp + 0xc0], r8
mov dword [rsp + 0xbc], r8d
cmp ecx, r8d
jne 0x100142741
mov dword [rsp + 0x5c], r11d
mov rsi, r11
mov qword [rsp + 0x98], r11
lea rax, [0x100000000]
mov r15, qword [rax + rsi*8 + 0x190510]
mov rbp, qword [r14 + 0x148]
xor eax, eax
mov dword [rsp + 0x74], eax
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x7c], eax
mov eax, dword [rbp]
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0x68], rbp
mov esi, eax
mov r13d, r11d
mov dword [rsp + 0x70], r11d
and esi, 0xfffff
mov r14d, r11d
mov dword [rsp + 0x54], esi
cmp esi, r8d
jbe 0x100141a00
mov r13d, edi
jmp 0x100141f92
and eax, 0xfff00000
cmp eax, dword [r15 + 4]
jne 0x1001419f8
mov ecx, r11d
mov dword [rsp + 0x58], ecx
mov eax, dword [r15 + 0x1c]
mov ebx, r11d
add eax, edi
mov dword [rsp + 0x420], ebx
je 0x100141ee6
mov eax, r12d
shl rax, 3
mov qword [rsp + 0x88], rax
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x180]
mov r8, rax
call sub.msvcrt.dll_memcpy
mov r13d, 0xa0
lea rcx, [rsp + 0x280]
lea r14d, [r13 + 0x5f]
mov r8, r13
mov edx, r14d
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x320]
mov r8, r13
mov edx, r14d
call sub.msvcrt.dll_memset
xor r11d, r11d
mov r14d, r12d
mov dword [rsp + 0x50], r12d
mov dword [rsp + 0x60], r12d
mov r13d, r11d
mov r12d, r11d
cmp dword [r15 + 8], r11d
jbe 0x100141c25
mov r14, qword [rsp + 0x410]
mov r10, qword [rbp + 8]
mov eax, r12d
imul eax, esi
lea r8, [r10 + rax*4]
mov r11d, eax
mov rax, qword [r14 + 0x20]
mov ecx, dword [r8]
mov rdx, qword [rax + rcx*8]
mov eax, r12d
mov ecx, edi
sub ecx, r12d
test ebx, ebx
cmovne eax, ecx
mov ebx, dword [r15 + rax*4 + 0xc]
cmp ebx, 0x10
jae 0x100141b99
cmp dword [rdx + 0x48], 0xffffffff
je 0x100141c0e
mov ecx, dword [rdx + 0x48]
mov rax, qword [r14 + 0x28]
and dword [rsp + 0x38], 0
mov rbp, qword [rax + rcx*8]
mov r9d, dword [rsp + 0x54]
mov esi, ebx
sub esi, dword [r15]
mov rcx, r14
mov rdx, rbp
shl rsi, 5
add rsi, r15
mov eax, dword [rsi + 0x18]
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
call fcn.100154f64
xor r11d, r11d
cmp eax, r11d
jne 0x100141cb6
mov rcx, r14
cmp ebx, dword [r15]
jb 0x100141bfd
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x38], 3
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x320]
lea r9, [rsp + 0x180]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov r8, rsi
mov rdx, rbp
mov qword [rsp + 0x20], rax
call fcn.1001551e8
mov esi, dword [rsp + 0x54]
mov rbp, qword [rsp + 0x68]
mov r13d, eax
jmp 0x100141be3
add ebx, 0xfffffff0
cmp ebx, 0xa
jae 0x100141efe
movsxd rax, ebx
lea r8, [rsp + 0xb0]
mov r9d, 4
add rax, rax
lea rdx, [rsp + rax*8 + 0x280]
mov eax, dword [r8]
cmp eax, esi
jae 0x100141bd3
add eax, r11d
mov eax, dword [r10 + rax*4]
mov dword [rdx], eax
jmp 0x100141bd6
or dword [rdx], 0xffffffff
add r8, 4
add rdx, 4
sub r9, rdi
jne 0x100141bc1
cmp r13d, edi
je 0x100141c11
add r12d, edi
cmp r12d, dword [r15 + 8]
jae 0x100141c11
mov ebx, dword [rsp + 0x420]
jmp 0x100141aa7
lea r9, [0x100036468]
xor r8d, r8d
xor edx, edx
call fcn.10013cf50
mov r13d, edi
xor r11d, r11d
mov r14d, dword [rsp + 0x60]
mov ebx, dword [rsp + 0x420]
mov dword [rsp + 0x50], r14d
mov edx, r11d
cmp dword [r15 + 8], r11d
jbe 0x100141ce3
mov eax, edx
mov ecx, edi
sub ecx, edx
cmp ebx, r11d
cmovne eax, ecx
cmp dword [r15 + rax*4 + 0xc], 0x10
jb 0x100141cd7
cmp r14d, r11d
jbe 0x100141cd7
mov r12d, dword [rsp + 0x54]
lea rbx, [rsp + 0x180]
mov ebp, r14d
mov r9d, r11d
mov r10, r11
cmp r12d, r11d
jbe 0x100141cc1
mov rsi, qword [rbx]
mov r8d, r11d
cmp dword [rsi + 0x10], r11d
jbe 0x100141ca9
mov rax, qword [rsp + 0x68]
mov ecx, edx
mov rax, qword [rax + 8]
imul ecx, r12d
add rcx, r10
mov r11d, dword [rax + rcx*4]
mov rax, qword [rsi + 0x18]
cmp r11d, dword [rax]
je 0x100141cbe
add r8d, edi
add rax, 4
cmp r8d, dword [rsi + 0x10]
jb 0x100141c94
xor r11d, r11d
add r9d, edi
add r10, rdi
cmp r9d, r12d
jae 0x100141cc1
jmp 0x100141c71
mov r13d, edi
jmp 0x100141c14
mov r13d, edi
add rbx, 8
sub rbp, rdi
mov r11d, 0
jne 0x100141c63
mov ebx, dword [rsp + 0x420]
add edx, edi
cmp edx, dword [r15 + 8]
jb 0x100141c32
cmp r13d, r11d
jne 0x100141eb2
cmp dword [rsp + 0x58], r11d
jne 0x100141f1a
cmp dword [r15], r11d
jne 0x100141f1a
cmp r14d, r11d
jbe 0x100141e2c
mov eax, r14d
lea r12, [rsp + 0x180]
mov qword [rsp + 0x60], r12
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x80], rax
mov r15, qword [r12]
cmp dword [r15 + 0x10], r11d
jbe 0x100141e0d
mov r14d, dword [r15 + 0x10]
mov r12, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x410]
mov rbp, r11
cmp dword [rax + 0x10], r11d
jbe 0x100141df3
mov rbx, qword [rax + 0x28]
mov esi, dword [rax + 0x10]
mov r8, qword [rbx]
cmp r8, r11
je 0x100141dde
cmp dword [r8], r11d
je 0x100141dde
mov edx, r11d
cmp dword [r8 + 4], r11d
jbe 0x100141dae
mov rax, qword [r15 + 0x18]
mov r9, qword [r8 + 8]
mov r11d, dword [r8 + 4]
mov r10d, dword [rax + rbp]
cmp dword [r9], r10d
je 0x100141da3
mov rax, qword [rsp + 0x410]
mov ecx, dword [r9]
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + rcx*8]
cmp dword [rcx + 0x38], r10d
jne 0x100141da5
mov edx, edi
add r9, 4
sub r11, rdi
jne 0x100141d85
cmp r8, qword [rsp + 0x68]
cmove edx, r11d
cmp edx, r11d
je 0x100141dde
lea rax, [rsp + 0x180]
mov rcx, r12
cmp r8, qword [rax]
cmove edx, r11d
add rax, 8
sub rcx, rdi
jne 0x100141dc7
cmp edx, r11d
cmovne r13d, edi
add rbx, 8
sub rsi, rdi
jne 0x100141d5f
mov rax, qword [rsp + 0x410]
add rbp, 4
sub r14, rdi
jne 0x100141d4e
mov r12, qword [rsp + 0x60]
mov rax, qword [rsp + 0x80]
add r12, 8
sub rax, rdi
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x60], r12
jne 0x100141d29
mov r14d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x410]
lea r9, [rsp + 0x280]
mov r11d, 0x28
cmp dword [r9], 0xffffffff
je 0x100141e95
xor edx, edx
cmp r14d, edx
jbe 0x100141e95
mov ecx, dword [r9]
mov rax, qword [r15 + 0x20]
lea r8, [rsp + 0x180]
mov rbx, qword [rax + rcx*8]
mov r10d, r14d
mov rax, qword [r8]
cmp dword [rax + 0x10], edx
jbe 0x100141e8c
mov rcx, qword [rax + 0x18]
mov edx, dword [rax + 0x10]
mov eax, dword [rcx]
cmp dword [r9], eax
je 0x100141e80
cmp dword [rbx + 0x38], eax
jne 0x100141e83
mov r13d, edi
add rcx, 4
sub rdx, rdi
jne 0x100141e74
add r8, 8
sub r10, rdi
jne 0x100141e65
add r9, 4
sub r11, rdi
jne 0x100141e42
mov r15, qword [rsp + 0xa8]
cmp r13d, r11d
je 0x100141f1a
mov ebx, dword [rsp + 0x420]
mov eax, dword [r15 + 0x1c]
mov esi, dword [rsp + 0x54]
mov rbp, qword [rsp + 0x68]
mov r12d, dword [rsp + 0x428]
add eax, edi
add ebx, edi
cmp ebx, eax
mov rax, qword [rsp + 0x88]
mov dword [rsp + 0x420], ebx
jb 0x100141a37
mov ecx, dword [rsp + 0x58]
cmp r13d, r11d
je 0x100141f1a
add ecx, edi
mov dword [rsp + 0x58], ecx
cmp ecx, edi
jae 0x100141f87
jmp 0x100141a12
mov r12d, dword [rsp + 0x428]
mov r13d, 0x80004005
mov r8d, 3
xor r11d, r11d
jmp 0x100141f9a
mov ebx, r14d
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x200]
shl rbx, 3
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x68]
xor r11d, r11d
lea r12d, [r14 + 1]
mov qword [rsp + rbx + 0x200], rax
lea edx, [r11 + 0x28]
mov rax, r11
mov dword [rsp + 0x428], r12d
mov ecx, dword [rsp + rax + 0x280]
cmp ecx, 0xffffffff
jne 0x100141f74
mov ecx, dword [rsp + rax + 0x320]
cmp ecx, 0xffffffff
je 0x100141f7b
mov dword [rsp + rax + 0xe0], ecx
add rax, 4
sub rdx, rdi
jne 0x100141f5c
mov r13d, r11d
cmp r13d, r11d
je 0x100141fc7
mov r8d, 3
mov r14, qword [rsp + 0x410]
mov eax, dword [rsp + 0x5c]
mov rsi, qword [rsp + 0x98]
add eax, edi
add rsi, rdi
mov dword [rsp + 0x5c], eax
cmp eax, 9
lea rax, [0x100000000]
mov qword [rsp + 0x98], rsi
jb 0x1001419af
mov edx, dword [rsp + 0x5c]
mov eax, r11d
mov ecx, r11d
cmp edx, 4
cmova eax, edi
cmp r13d, r11d
je 0x100142634
mov r14, qword [rsp + 0x410]
mov rax, r11
mov ebp, r11d
mov qword [rsp + 0xa0], rax
mov dword [rsp + 0x58], r11d
jmp 0x100142005
mov r12d, dword [rsp + 0x428]
lea rcx, [0x100000000]
mov r13d, r11d
mov dword [rsp + 0xc8], r11d
mov r15, qword [rcx + rax*8 + 0x190238]
mov rax, qword [r14 + 0x148]
xor ecx, ecx
mov qword [rsp + 0x68], rax
mov eax, dword [rax]
mov dword [rsp + 0xcc], ecx
mov esi, eax
mov qword [rsp + 0xa8], r15
mov dword [rsp + 0xd0], ecx
and esi, 0xfffff
mov dword [rsp + 0xd4], ecx
mov r14d, r11d
mov dword [rsp + 0x54], esi
cmp esi, 3
jbe 0x100142068
mov r13d, edi
jmp 0x1001425f7
and eax, 0xfff00000
cmp eax, dword [r15 + 4]
jne 0x100142060
mov ecx, r11d
mov dword [rsp + 0x5c], ecx
mov eax, dword [r15 + 0x1c]
mov ebx, r11d
add eax, edi
mov dword [rsp + 0x420], ebx
je 0x100142553
mov eax, r12d
shl rax, 3
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x180]
mov r8, rax
call sub.msvcrt.dll_memcpy
mov ebp, 0xa0
lea rcx, [rsp + 0x280]
lea r13d, [rbp + 0x5f]
mov r8, rbp
mov edx, r13d
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x320]
mov r8, rbp
mov edx, r13d
call sub.msvcrt.dll_memset
xor r11d, r11d
mov r14d, r12d
mov dword [rsp + 0x60], r12d
mov dword [rsp + 0x50], r12d
mov r13d, r11d
mov r12d, r11d
cmp dword [r15 + 8], r11d
jbe 0x100142291
mov r14, qword [rsp + 0x410]
mov rax, qword [rsp + 0x68]
mov r11d, r12d
xor r9d, r9d
mov r10, qword [rax + 8]
mov rax, qword [r14 + 0x20]
imul r11d, esi
lea r8, [r10 + r11*4]
mov ecx, dword [r8]
mov rdx, qword [rax + rcx*8]
mov eax, r12d
mov ecx, edi
sub ecx, r12d
cmp ebx, r9d
cmovne eax, ecx
mov ebx, dword [r15 + rax*4 + 0xc]
cmp ebx, 0x10
jae 0x100142205
cmp dword [rdx + 0x48], 0xffffffff
je 0x10014227a
mov ecx, dword [rdx + 0x48]
mov rax, qword [r14 + 0x28]
mov dword [rsp + 0x38], r9d
mov rbp, qword [rax + rcx*8]
mov r9d, dword [rsp + 0x54]
mov esi, ebx
sub esi, dword [r15]
mov rcx, r14
mov rdx, rbp
shl rsi, 5
add rsi, r15
mov eax, dword [rsi + 0x18]
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
call fcn.100154f64
xor r11d, r11d
cmp eax, r11d
jne 0x100142322
mov rcx, r14
cmp ebx, dword [r15]
jb 0x100142269
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x38], 3
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x320]
lea r9, [rsp + 0x180]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov r8, rsi
mov rdx, rbp
mov qword [rsp + 0x20], rax
call fcn.1001551e8
mov esi, dword [rsp + 0x54]
mov r13d, eax
jmp 0x10014224f
add ebx, 0xfffffff0
cmp ebx, 0xa
jae 0x100142573
movsxd rax, ebx
lea r8, [rsp + 0xb0]
mov r9d, 4
add rax, rax
lea rdx, [rsp + rax*8 + 0x280]
mov eax, dword [r8]
cmp eax, esi
jae 0x10014223f
add eax, r11d
mov eax, dword [r10 + rax*4]
mov dword [rdx], eax
jmp 0x100142242
or dword [rdx], 0xffffffff
add r8, 4
add rdx, 4
sub r9, rdi
jne 0x10014222d
cmp r13d, edi
je 0x10014227d
add r12d, edi
cmp r12d, dword [r15 + 8]
jae 0x10014227d
mov ebx, dword [rsp + 0x420]
jmp 0x10014210b
lea r9, [0x100036468]
xor r8d, r8d
xor edx, edx
call fcn.10013cf50
mov r13d, edi
xor r11d, r11d
mov r14d, dword [rsp + 0x50]
mov ebx, dword [rsp + 0x420]
mov dword [rsp + 0x60], r14d
mov edx, r11d
cmp dword [r15 + 8], r11d
jbe 0x10014234f
mov eax, edx
mov ecx, edi
sub ecx, edx
cmp ebx, r11d
cmovne eax, ecx
cmp dword [r15 + rax*4 + 0xc], 0x10
jb 0x100142343
cmp r14d, r11d
jbe 0x100142343
mov r12d, dword [rsp + 0x54]
lea rbx, [rsp + 0x180]
mov ebp, r14d
mov r9d, r11d
mov r10, r11
cmp r12d, r11d
jbe 0x10014232d
mov rsi, qword [rbx]
mov r8d, r11d
cmp dword [rsi + 0x10], r11d
jbe 0x100142315
mov rax, qword [rsp + 0x68]
mov ecx, edx
mov rax, qword [rax + 8]
imul ecx, r12d
add rcx, r10
mov r11d, dword [rax + rcx*4]
mov rax, qword [rsi + 0x18]
cmp r11d, dword [rax]
je 0x10014232a
add r8d, edi
add rax, 4
cmp r8d, dword [rsi + 0x10]
jb 0x100142300
xor r11d, r11d
add r9d, edi
add r10, rdi
cmp r9d, r12d
jae 0x10014232d
jmp 0x1001422dd
mov r13d, edi
jmp 0x100142280
mov r13d, edi
add rbx, 8
sub rbp, rdi
mov r11d, 0
jne 0x1001422cf
mov ebx, dword [rsp + 0x420]
add edx, edi
cmp edx, dword [r15 + 8]
jb 0x10014229e
cmp r13d, r11d
jne 0x100142527
cmp dword [rsp + 0x5c], r11d
jne 0x100142582
cmp dword [r15], r11d
jne 0x100142582
cmp r14d, r11d
jbe 0x1001424a1
mov eax, r14d
lea r12, [rsp + 0x180]
mov qword [rsp + 0x98], r12
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x80], rax
mov r15, qword [r12]
cmp dword [r15 + 0x10], r11d
jbe 0x10014247f
mov r14d, dword [r15 + 0x10]
mov r12, qword [rsp + 0x88]
mov rax, qword [rsp + 0x410]
mov rbp, r11
cmp dword [rax + 0x10], r11d
jbe 0x100142462
mov rbx, qword [rax + 0x28]
mov esi, dword [rax + 0x10]
mov r8, qword [rbx]
cmp r8, r11
je 0x10014244d
cmp dword [r8], r11d
je 0x10014244d
mov edx, r11d
cmp dword [r8 + 4], r11d
jbe 0x10014241d
mov rax, qword [r15 + 0x18]
mov r9, qword [r8 + 8]
mov r11d, dword [r8 + 4]
mov r10d, dword [rax + rbp]
cmp dword [r9], r10d
je 0x100142412
mov rax, qword [rsp + 0x410]
mov ecx, dword [r9]
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + rcx*8]
cmp dword [rcx + 0x38], r10d
jne 0x100142414
mov edx, edi
add r9, 4
sub r11, rdi
jne 0x1001423f4
cmp r8, qword [rsp + 0x68]
cmove edx, r11d
cmp edx, r11d
je 0x10014244d
lea rax, [rsp + 0x180]
mov rcx, r12
cmp r8, qword [rax]
cmove edx, r11d
add rax, 8
sub rcx, rdi
jne 0x100142436
cmp edx, r11d
cmovne r13d, edi
add rbx, 8
sub rsi, rdi
jne 0x1001423ce
mov rax, qword [rsp + 0x410]
add rbp, 4
sub r14, rdi
jne 0x1001423bd
mov r12, qword [rsp + 0x98]
mov rax, qword [rsp + 0x80]
add r12, 8
sub rax, rdi
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x98], r12
jne 0x100142398
mov r14d, dword [rsp + 0x60]
mov r15, qword [rsp + 0x410]
lea r9, [rsp + 0x280]
mov r11d, 0x28
cmp dword [r9], 0xffffffff
je 0x10014250a
xor edx, edx
cmp r14d, edx
jbe 0x10014250a
mov ecx, dword [r9]
mov rax, qword [r15 + 0x20]
lea r8, [rsp + 0x180]
mov rbx, qword [rax + rcx*8]
mov r10d, r14d
mov rax, qword [r8]
cmp dword [rax + 0x10], edx
jbe 0x100142501
mov rcx, qword [rax + 0x18]
mov edx, dword [rax + 0x10]
mov eax, dword [rcx]
cmp dword [r9], eax
je 0x1001424f5
cmp dword [rbx + 0x38], eax
jne 0x1001424f8
mov r13d, edi
add rcx, 4
sub rdx, rdi
jne 0x1001424e9
add r8, 8
sub r10, rdi
jne 0x1001424da
add r9, 4
sub r11, rdi
jne 0x1001424b7
mov r15, qword [rsp + 0xa8]
cmp r13d, r11d
je 0x100142582
mov ebx, dword [rsp + 0x420]
mov eax, dword [r15 + 0x1c]
mov esi, dword [rsp + 0x54]
mov r12d, dword [rsp + 0x428]
add eax, edi
add ebx, edi
cmp ebx, eax
mov rax, qword [rsp + 0x70]
mov dword [rsp + 0x420], ebx
jb 0x10014209c
mov ecx, dword [rsp + 0x5c]
cmp r13d, r11d
je 0x100142582
add ecx, edi
mov dword [rsp + 0x5c], ecx
cmp ecx, edi
jae 0x1001425ee
mov r12d, dword [rsp + 0x428]
jmp 0x10014207a
mov ebp, dword [rsp + 0x58]
mov r13d, 0x80004005
xor r11d, r11d
jmp 0x1001425ff
mov ebx, r14d
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x200]
shl rbx, 3
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x68]
inc r14d
xor r11d, r11d
mov qword [rsp + rbx + 0x200], rax
mov dword [rsp + 0x428], r14d
mov rax, r11
lea edx, [r11 + 0x28]
mov ecx, dword [rsp + rax + 0x280]
cmp ecx, 0xffffffff
jne 0x1001425db
mov ecx, dword [rsp + rax + 0x320]
cmp ecx, 0xffffffff
je 0x1001425e2
mov dword [rsp + rax + 0xe0], ecx
add rax, 4
sub rdx, rdi
jne 0x1001425c3
mov r13d, r11d
mov ebp, dword [rsp + 0x58]
cmp r13d, r11d
je 0x100142621
mov r14, qword [rsp + 0x410]
mov rax, qword [rsp + 0xa0]
add ebp, edi
add rax, rdi
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0xa0], rax
cmp ebp, 3
jb 0x100141ffd
cmp ebp, edi
mov eax, r11d
mov ecx, edi
cmova eax, edi
cmp r13d, r11d
jne 0x100142741
mov r15, qword [rsp + 0x410]
movsxd r13, eax
mov esi, 0xc
mov rbp, qword [r15 + 0x20]
lea rax, [rsp + 0x70]
mov r12, rsi
mov r10d, r11d
movsxd r14, ecx
mov rdx, r11
sub r12, rax
mov r9d, dword [rsp + rdx + 0xf0]
mov r8, qword [rbp + r9*8]
cmp dword [r8 + 0x10], r10d
jne 0x100142741
cmp dword [rsp + 0x418], r11d
je 0x100142762
cmp dword [r8 + 0x48], 0xffffffff
jne 0x100142741
mov eax, dword [r15 + 0x98]
cmp dword [r8 + 4], eax
jne 0x100142741
movzx ecx, byte [r8 + 0x79]
lea eax, [r10 + 1]
cmp ecx, eax
jne 0x100142741
cmp byte [r8 + 0x78], 5
jne 0x100142741
mov dword [rsp + rdx + 0x88], r9d
cmp r13, r11
jne 0x100142757
cmp dword [r8 + 0x3c], 0x80000
jne 0x100142741
mov r9d, dword [rsp + rdx + 0x110]
mov r11d, dword [r8 + 0x38]
cmp r9d, r11d
jne 0x100142716
mov eax, dword [rsp + rdx + 0x100]
cmp dword [rsp + rdx + 0x120], eax
jne 0x100142716
mov ecx, dword [rsp + rdx + 0x130]
cmp ecx, dword [rsp + rdx + 0x140]
jne 0x100142716
cmp dword [rsp + rdx + 0x120], ecx
jne 0x100142716
xor r11d, r11d
jmp 0x100142891
cmp dword [rsp + rdx + 0x120], r11d
jne 0x100142741
mov eax, dword [rsp + rdx + 0x100]
cmp r9d, eax
jne 0x100142741
mov ecx, dword [rsp + rdx + 0x130]
cmp ecx, dword [rsp + rdx + 0x140]
jne 0x100142741
cmp r9d, ecx
je 0x10014270e
mov eax, edi
add rsp, 0x3c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp dword [r8 + 0x3c], r11d
jne 0x100142741
jmp 0x100142820
cmp r13, r11
je 0x100142787
mov ecx, dword [r8 + 4]
mov rax, qword [r15 + 0x18]
mov rcx, qword [rax + rcx*8]
bt dword [rcx + 8], 9
jae 0x100142741
mov dword [rsp + rdx + 0x88], r9d
jmp 0x100142818
cmp dword [r8 + 0x48], 0xffffffff
je 0x100142741
mov ecx, dword [r8 + 0x48]
mov rax, qword [r15 + 0x28]
mov r8, qword [rax + rcx*8]
cmp dword [r8], 0x20500003
jne 0x100142741
mov r9, qword [r8 + 8]
mov r11, qword [r15 + 0x18]
mov ebx, dword [r9 + rdx]
mov r8, qword [rbp + rbx*8]
mov eax, dword [r8 + 4]
mov rcx, qword [r11 + rax*8]
bt dword [rcx + 8], 9
jae 0x100142741
cmp dword [r8 + 0x10], r10d
jne 0x100142741
lea rax, [r12 + r9]
add rax, rdx
mov eax, dword [rsp + rax + 0x70]
mov r8, qword [rbp + rax*8]
mov eax, dword [r8 + 4]
mov rcx, qword [r11 + rax*8]
bt dword [rcx + 8], 8
jae 0x100142741
movsd xmm0, qword [r8 + 0x20]
ucomisd xmm0, qword [0x100038420]
jp 0x100142741
jne 0x100142741
mov dword [rsp + rdx + 0x88], ebx
xor r11d, r11d
mov r9d, dword [rsp + rdx + 0x88]
mov r8d, dword [rsp + rdx + 0x110]
cmp r8d, r9d
jne 0x100142856
mov eax, dword [rsp + rdx + 0x100]
cmp dword [rsp + rdx + 0x120], eax
jne 0x100142856
mov ecx, dword [rsp + rdx + 0x130]
cmp ecx, dword [rsp + rdx + 0x140]
jne 0x100142856
cmp dword [rsp + rdx + 0x120], ecx
je 0x100142891
cmp dword [rsp + rdx + 0x120], r9d
jne 0x100142741
mov eax, dword [rsp + rdx + 0x100]
cmp r8d, eax
jne 0x100142741
mov ecx, dword [rsp + rdx + 0x130]
cmp ecx, dword [rsp + rdx + 0x140]
jne 0x100142741
cmp r8d, ecx
jne 0x100142741
mov dword [rsp + rdx + 0x70], eax
cmp r14, r11
je 0x1001428a7
cmp ecx, dword [rsp + rdx + 0x150]
jne 0x100142741
mov rcx, qword [rbp + rax*8]
cmp dword [rcx + 0x10], r10d
jne 0x100142741
add r10d, edi
add rdx, 4
cmp r10d, 3
jb 0x10014265c
mov eax, dword [rsp + 0x428]
cmp eax, r11d
jbe 0x1001428ed
lea rcx, [rsp + 0x200]
mov rdx, rax
mov rax, qword [rcx]
add rcx, 8
sub rdx, rdi
mov dword [rax], r11d
jne 0x1001428de
lea rdx, [0x100002840]
mov ecx, 0x98
call fcn.1001503a8
xor r12d, r12d
mov rbx, rax
cmp rax, r12
je 0x10014294b
mov dword [rax], r12d
mov dword [rax + 4], r12d
mov qword [rax + 8], r12
mov dword [rax + 0x10], r12d
mov qword [rax + 0x18], r12
mov dword [rax + 0x20], r12d
mov qword [rax + 0x28], r12
mov dword [rax + 0x30], r12d
mov qword [rax + 0x38], r12
mov dword [rax + 0x40], r12d
mov dword [rax + 0x44], r12d
mov dword [rax + 0x48], r12d
or eax, 0xffffffff
mov dword [rbx + 0x54], r12d
mov qword [rbx + 0x58], r12
mov dword [rbx + 0x4c], eax
mov dword [rbx + 0x50], eax
jmp 0x10014294e
mov rbx, r12
cmp rbx, r12
jne 0x10014295d
mov eax, 0x8007000e
jmp 0x100142743
mov ebp, dword [rsp + 0x418]
mov rax, qword [r15 + 0x148]
mov dword [rsp + 0x20], r12d
mov r9d, dword [rax + 0x10]
mov rcx, rbx
cmp ebp, r12d
je 0x100142989
mov edx, 0x72c00003
mov r8d, 6
jmp 0x100142994
mov edx, 0x72d00003
mov r8d, 9
call fcn.10014fca0
cmp eax, r12d
mov r11d, eax
jl 0x100142a70
mov rax, qword [r15 + 0x148]
cmp rax, r12
je 0x100142a6a
mov rax, qword [rax + 0x58]
mov rcx, qword [rbx + 0x18]
mov qword [rbx + 0x58], rax
mov rdx, qword [r15 + 0x148]
mov r8d, dword [rdx + 0x10]
mov rdx, qword [rdx + 0x18]
shl r8, 2
call sub.msvcrt.dll_memcpy
lea r9, [rsp + 0x70]
lea r8, [rsp + 0x88]
sub r9, rsi
sub r8, rsi
mov rax, qword [r15 + 0x148]
mov rdx, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov eax, dword [rcx]
mov dword [rsi + rdx - 0xc], eax
mov rcx, qword [rbx + 8]
mov eax, dword [r9 + rsi]
mov dword [rsi + rcx], eax
cmp ebp, r12d
jne 0x100142a1d
mov rcx, qword [rbx + 8]
mov eax, dword [r8 + rsi]
mov dword [rsi + rcx + 0xc], eax
add rsi, 4
sub qword [rsp + 0xc0], rdi
jne 0x1001429ec
mov ecx, dword [r15 + 0x140]
mov rax, qword [r15 + 0x28]
mov rdx, qword [rax + rcx*8]
cmp rdx, r12
je 0x100142a54
mov rax, qword [0x10019f820]
mov qword [0x10019f820], rdx
mov qword [rdx + 0x90], rax
mov rax, qword [r15 + 0x28]
mov ecx, dword [r15 + 0x140]
mov qword [rax + rcx*8], rbx
xor eax, eax
jmp 0x100142743
mov r11d, 0x80004005
mov rax, qword [0x10019f820]
mov qword [0x10019f820], rbx
mov qword [rbx + 0x90], rax
mov eax, r11d
jmp 0x100142743