Function at 0x180071040
Capabilities:
Hash data with md5

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x110
mov rax, qword [0x1800dbea8]
xor rax, rsp
mov qword [rsp + 0x108], rax
mov rdi, qword [rsp + 0x170]
mov ebp, r9d
mov r10, qword [rsp + 0x178]
mov r9, r8
mov qword [rsp + 0x70], r8
mov rsi, rcx
mov r8, rdx
mov qword [rsp + 0x78], rdx
mov rdx, qword [rsp + 0x180]
lea eax, [rbp + 0xc]
mov dword [rsp + 0x44], eax
mov ebx, dword [rsp + 0x44]
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x88], r10
mov qword [rsp + 0x58], rdx
cmp ebp, eax
jae case.0x18007110a.211
mov r15d, dword [rsp + 0x44]
lea r11, [0x180000000]
mov r14d, dword [rsp + 0x44]
mov r13d, dword [rsp + 0x44]
mov r12d, dword [rsp + 0x80]
mov dword [rsp + 0x60], ebx
nop dword [rax]
lea eax, [rbp - 0xce]
cmp eax, 0x1b
ja case.0x18007110a.212
mov ecx, dword [r11 + rax*4 + 0x71860]
add rcx, r11
jmp rcx
mov dword [rsp + 0xd8], 0x67452301
mov dword [rsp + 0xdc], 0xefcdab89
jmp case.0x18007110a.212
mov rax, qword [rsp + 0xc0]
xor r15d, r15d
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x40], r15d
jmp case.0x18007110a.212
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
jmp 0x180071471
mov qword [rsp + 0xc8], r9
jmp case.0x18007110a.212
mov r9d, 0x3b
mov qword [rsp + 0x20], 0
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18004deb0
mov rdi, rax
xor r9d, r9d
xor eax, eax
xor r8d, r8d
mov qword [rsp + 0x30], rax
mov edx, 0xc8
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.18003b540
cmp rdi, rax
je 0x180071469
xor edi, edi
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rdi
xor ecx, ecx
lea r9d, [rdi + 0x3b]
call fcn.18004deb0
test rax, rax
je 0x1800711f7
lea r9d, [rdi + 0x3b]
mov qword [rsp + 0x20], rdi
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18004deb0
mov ecx, 1
mov rdi, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [rdi + 0x10]
lea rdx, str.Unknown_version__u
mov rcx, rax
call fcn.1800c02b0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9d, dword [rsi]
lea rdx, str._s_g___g_s
mov r8, qword [rsp + 0x70]
mov rcx, rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x20], rax
call fcn.1800c02b0
jmp 0x180071469
mov rdi, qword [r8]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rsi, rax
call fcn.1800c0290
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov rdi, qword [rsp + 0x98]
mov rdx, rsi
mov r8, rdi
mov rcx, qword [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___stdio_common_vfprintf]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, [0x1800cf0f8]
call fcn.1800c02b0
jmp 0x180071471
mov dword [rsp + 0xe0], 0x98badcfe
jmp case.0x18007110a.212
mov eax, r14d
and eax, 0xfffffffe
mov dword [r8], eax
test r10, r10
je 0x18007129d
mov dword [r10], r15d
xor ebx, ebx
mov dword [rsp + 0x60], ebx
jmp case.0x18007110a.212
mov rcx, qword [rsp + 0xc8]
mov eax, 1
xchg dword [rcx + 0x11c], eax
jmp case.0x18007110a.212
mov dword [rsp + 0xe4], 0x10325476
test rdi, rdi
je 0x180071312
mov eax, 0xfd
cmp eax, 0xfd
jne 0x180071306
xor ecx, ecx
xor eax, eax
cmp dword [rdi + rax*4], 0
jne 0x1800712f1
inc ecx
inc rax
cmp rax, 4
jl 0x1800712e0
mov eax, 0xfd
cmp ecx, 4
jge 0x180071306
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0xd8], xmm0
add eax, 0x8d53
cmp eax, 0x8d53
jbe 0x1800712d5
movsxd rax, dword [r9]
cmp eax, 5
ja case.default.0x180071329
mov ecx, dword [r11 + rax*4 + 0x718d0]
add rcx, r11
jmp rcx
mov edi, dword [rsp + 0x40]
inc edi
mov dword [rsp + 0x40], edi
jmp 0x18007133b
mov edi, dword [rsp + 0x40]
mov eax, dword [rdx]
lea rcx, [rsp + 0xa8]
mov dword [rsp + 0xa0], eax
xor r9d, r9d
lea rax, [rsp + 0xa0]
mov dword [rsp + 0xa8], edi
mov r8d, 0xb7
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.180064cf0
mov r14d, eax
jmp 0x180071464
inc dword [rsp + 0x40]
mov ecx, 0x6d
mov eax, ecx
sub eax, 0x6d
je 0x180071408
cmp eax, 0x33
jne 0x18007140d
cmp dword [rdx], 0
jle 0x18007163b
mov ebx, dword [rsp + 0x50]
mov r12d, dword [rsp + 0xb0]
mov rcx, qword [rsp + 0x68]
nop dword [rax + rax]
mov r11d, dword [rdx]
lea r9, [rsp + 0xe8]
mov r15d, 0x88
mov r10d, 8
mov dword [rsp + 0x50], r15d
nop dword [rax]
mov eax, r15d
sub eax, 0x86
je 0x1800714da
sub eax, 1
je 0x1800714d2
sub eax, 1
je 0x1800714a8
cmp eax, 4
jne 0x18007159a
mov rax, qword [rsp + 0x48]
mov word [rax + 8], r11w
jmp 0x18007159a
mov qword [rsp + 0x48], rsi
add ecx, 0x33
cmp ecx, 0xd3
jb 0x180071382
inc dword [rsp + 0x40]
mov r14d, 0x6c
nop word [rax + rax]
cmp r14d, 0x7980
ja 0x18007181d
cmp r14d, 0x6c
je 0x180071650
cmp r14d, 0x3d2c
jne 0x180071811
mov r14d, dword [rsp + 0xd8]
mov r15d, dword [rsp + 0xdc]
mov ebp, 0xd1
mov rdi, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x58]
lea r11, [0x180000000]
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x88]
inc ebp
cmp ebp, dword [rsp + 0x44]
jae case.0x18007110a.211
mov rsi, qword [rsp + 0xb8]
jmp 0x1800710f0
mov rax, qword [rsp + 0x48]
mov r12d, r11d
shl r12d, 8
or r12d, r11d
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x68], rax
mov eax, r12d
shl eax, 0x10
or r12d, eax
jmp 0x180071595
mov ebx, r12d
jmp 0x18007159a
lea eax, [r10*4]
cmp r11d, eax
cmovle eax, r11d
xor edi, edi
mov r11d, eax
test eax, eax
jle 0x18007156e
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x90]
mov r15d, dword [rsp + 0x40]
sub r8, rdx
nop word [rax + rax]
mov ecx, 0xd7
mov eax, ecx
sub eax, 0xd6
je 0x18007152b
cmp eax, 1
jne 0x180071555
test dil, 3
jne 0x180071555
jmp 0x180071552
test r15d, r15d
je 0x180071537
movzx eax, byte [r8 + rdx]
jmp 0x18007153a
movsx eax, byte [rdx]
shl ebx, 8
add ebx, eax
mov eax, edi
and eax, 3
cmp al, 3
jne 0x180071555
mov dword [r9], ebx
add r9, 4
dec r10d
mov ebx, r12d
dec ecx
cmp ecx, 0xd5
ja 0x180071515
inc edi
inc rdx
cmp edi, r11d
jl 0x180071510
mov r15d, dword [rsp + 0x50]
test r10d, r10d
jle 0x18007157a
mov dword [r9], ebx
add r9, 4
add r10d, 0xfffffffe
js 0x180071595
lea edx, [r10 + 1]
mov eax, r12d
mov rdi, r9
mov ecx, edx
rep stosd dword [rdi], eax
sub r10d, edx
lea r9, [r9 + rdx*4]
mov rcx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x90]
dec r15d
mov dword [rsp + 0x50], r15d
mov edi, r12d
mov esi, ebx
mov rbp, rcx
cmp r15d, 0x84
ja 0x1800713d0
lea rax, [rsp + 0xe8]
mov r9d, 0x4c
lea r8, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
xor edx, edx
xor ecx, ecx
call fcn.1800672f0
mov rdx, qword [rsp + 0x58]
mov rcx, rbp
mov rax, qword [rsp + 0x48]
add rax, 0x20
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x48], rax
add dword [rdx], 0xffffffe0
cmp dword [rdx], 0
mov qword [rsp + 0x68], rcx
jg 0x1800713b0
mov ebx, dword [rsp + 0x60]
mov r12d, dword [rsp + 0x80]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x68], rbp
mov dword [rsp + 0x50], esi
mov dword [rsp + 0xb0], edi
mov r15d, dword [rsp + 0xe0]
mov r14d, dword [rsp + 0xdc]
jmp 0x180071464
cmp dword [rdx], 0
mov rcx, rsi
mov qword [rsp + 0x48], rcx
jle 0x180071811
mov ebx, dword [rsp + 0x40]
mov ebp, 0x18
nop word [rax + rax]
cmp ebp, 0x18
je 0x18007168f
cmp ebp, 0x1b
jne 0x1800717f0
add dword [rdx], 0xfffffff0
add rcx, 0x10
mov qword [rsp + 0x48], rcx
jmp 0x1800717f0
mov r10d, dword [rdx]
lea r11, [rsp + 0xe8]
mov r9d, 4
mov esi, 0x88
mov eax, esi
sub eax, 0x86
je 0x1800716fb
sub eax, 1
je 0x1800716f3
sub eax, 1
je 0x1800716cb
cmp eax, 4
jne 0x1800717b1
mov word [rcx + 8], r10w
jmp 0x1800717b1
mov r12d, r10d
mov qword [rsp + 0xc0], rcx
shl r12d, 8
or r12d, r10d
mov qword [rsp + 0xd0], rcx
mov eax, r12d
shl eax, 0x10
or r12d, eax
jmp 0x1800717b1
mov r13d, r12d
jmp 0x1800717b1
lea eax, [r9*4]
cmp r10d, eax
cmovle eax, r10d
xor edi, edi
mov r10d, eax
test eax, eax
jle 0x18007178a
mov rdx, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xc0]
sub r8, rdx
nop word [rax + rax]
mov ecx, 0xd7
mov eax, ecx
sub eax, 0xd6
je 0x18007174b
cmp eax, 1
jne 0x180071776
test dil, 3
jne 0x180071776
jmp 0x180071773
test ebx, ebx
je 0x180071756
movzx eax, byte [r8 + rdx]
jmp 0x180071759
movsx eax, byte [rdx]
shl r13d, 8
add r13d, eax
mov eax, edi
and eax, 3
cmp al, 3
jne 0x180071776
mov dword [r11], r13d
add r11, 4
dec r9d
mov r13d, r12d
dec ecx
cmp ecx, 0xd5
ja 0x180071735
inc edi
inc rdx
cmp edi, r10d
jl 0x180071730
test r9d, r9d
jle 0x180071796
mov dword [r11], r13d
add r11, 4
add r9d, 0xfffffffe
js 0x1800717b1
lea edx, [r9 + 1]
mov eax, r12d
mov rdi, r11
mov ecx, edx
rep stosd dword [rdi], eax
sub r9d, edx
lea r11, [r11 + rdx*4]
mov rcx, qword [rsp + 0x48]
dec esi
cmp esi, 0x84
ja 0x1800716a5
lea r8, [rsp + 0xd8]
mov dword [rsp + 0x80], r12d
mov edx, 0xe5
lea rcx, [rsp + 0xe8]
call fcn.180057620
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x58]
add ebp, 3
cmp ebp, 0x1e
jb 0x180071670
cmp dword [rdx], 0
jg 0x180071665
mov ebx, dword [rsp + 0x60]
mov rsi, qword [rsp + 0xb8]
add r14d, 0x3cc0
jmp 0x180071430
mov r8, qword [rsp + 0x78]
mov dword [r8], 0
mov eax, 0x7f2bb759
jmp 0x180071832
mov eax, ebx
mov rcx, qword [rsp + 0x108]
xor rcx, rsp
call fcn.1800c0ae0
mov rbx, qword [rsp + 0x168]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret