Function at 0x180027990
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, 0x648
movaps xmmword [rsp + 0x630], xmm6
mov rbp, r9
mov rdi, rdx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea r15, [rdx + 0x68]
lea r12, [rdx + 0x90]
lea r14, [rdx + 0x70]
lea rcx, [rsp + 0x150]
mov byte [rsp + 0x4b], r8b
call fcn.180028860
mov ebx, dword [rsp + 0x150]
cmp ebx, 3
mov qword [rsp + 0x70], r14
jne 0x180028250
lea r13, [rsp + 0x450]
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x128], r15
mov qword [rsp + 0x88], rbp
jmp 0x180027a59
lea r13, [rsp + 0x450]
mov rcx, r13
call fcn.180001210
lea rcx, [rsp + 0x150]
mov rdx, rdi
movzx r8d, byte [rsp + 0x4b]
mov r9, rbp
call fcn.180028860
mov ebx, dword [rsp + 0x150]
cmp ebx, 3
jne 0x180028250
mov r8d, 0x108
lea rsi, [rsp + 0x344]
mov rcx, rsi
lea rdx, [rsp + 0x158]
call fcn.1800fe4e0
mov r8d, 0x108
mov rcx, r13
mov rdx, rsi
call fcn.1800fe4e0
movzx r13d, word [rsp + 0x550]
lea eax, [r13 - 0x12c]
cmp ax, 0x63
jae 0x1800282a0
mov rax, qword [r15]
mov ecx, dword [rax + 0xc8]
test rcx, rcx
je 0x1800282a0
mov rdx, qword [rsp + 0x68]
inc rdx
cmp rdx, rcx
jae 0x1800283ae
mov rcx, qword [rsp + 0x500]
mov rdx, qword [rsp + 0x510]
mov r9d, 8
lea r8, str.locationredirect_____
call fcn.18000f900
test rax, rax
je 0x1800282a0
mov rsi, rax
mov rbx, rdx
mov qword [rsp + 0x90], r13
mov rbp, r15
mov r15, r12
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0x98], rdi
lea r13, [rsp + 0x150]
mov rcx, r13
call fcn.1800a2620
lea r12, [rsp + 0x318]
mov rcx, r12
mov rdx, r13
mov r8, rdi
call fcn.1800a2550
lea rcx, [rsp + 0x2c0]
mov rdx, r12
mov r8, rsi
mov r9, rbx
call fcn.1800a2570
mov eax, dword [rsp + 0x2c0]
cmp eax, 2
je 0x180028445
lea rdx, [rsp + 0x2c4]
mov ecx, dword [rdx + 0x50]
mov dword [rsp + 0x390], ecx
movups xmm0, xmmword [rdx + 0x40]
movaps xmmword [rsp + 0x380], xmm0
movups xmm1, xmmword [rdx]
movups xmm2, xmmword [rdx + 0x10]
movups xmm3, xmmword [rdx + 0x20]
movups xmm4, xmmword [rdx + 0x30]
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xd0], xmm2
movaps xmmword [rsp + 0xe0], xmm3
movaps xmmword [rsp + 0xf0], xmm4
movaps xmmword [rsp + 0x100], xmm0
mov dword [rsp + 0x110], ecx
mov dword [rsp + 0x268], eax
mov eax, dword [rsp + 0x110]
lea rcx, [rsp + 0x26c]
mov dword [rcx + 0x50], eax
movaps xmm0, xmmword [rsp + 0x100]
movups xmmword [rcx + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movaps xmm2, xmmword [rsp + 0xe0]
movaps xmm3, xmmword [rsp + 0xf0]
movups xmmword [rcx + 0x30], xmm3
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rcx, qword [rsp + 0x90]
lea eax, [rcx - 0x12d]
cmp eax, 3
jae 0x180027c70
mov r13, qword [rdi + 0x78]
mov rsi, qword [rdi + 0x88]
cmp rsi, 4
mov r12, r15
je 0x180027cb7
cmp rsi, 3
mov rbx, rbp
jne 0x180027cc8
movzx eax, word [r13]
xor eax, 0x4547
movzx ecx, byte [r13 + 2]
xor ecx, 0x54
or cx, ax
jne 0x180027cc8
jmp 0x180027dbe
cmp ecx, 0x133
mov r12, r15
je 0x180027d20
cmp ecx, 0x134
mov rbx, rbp
jne case.0x180027d4a.6
mov rax, qword [rdi + 0x88]
add rax, 0xfffffffffffffffd
cmp rax, 4
ja case.0x180027d4a.6
mov r13, qword [rdi + 0x78]
lea rcx, [0x18010e758]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
cmp dword [r13], 0x44414548
mov rbx, rbp
je 0x180027dbe
movzx eax, byte [0x1801b3bd1]
mov ecx, 3
mov edx, 1
call fcn.18000b3c0
test rax, rax
je 0x18002883e
mov r13, rax
mov byte [rax + 2], 0x54
mov word [rax], 0x4547
mov bpl, 1
mov esi, 3
mov eax, 3
mov qword [rsp + 0x78], rax
mov rax, qword [rbx]
cmp byte [rax + 0xce], 0
jne 0x180027ddc
mov r14, rsi
xor r15d, r15d
jmp 0x180027f0e
mov rax, qword [rdi + 0x88]
add rax, 0xfffffffffffffffd
cmp rax, 4
mov rbx, rbp
ja case.0x180027d4a.6
mov r13, qword [rdi + 0x78]
lea rcx, [0x18010e76c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, word [r13]
xor eax, 0x4547
movzx ecx, byte [r13 + 2]
xor ecx, 0x54
mov esi, 3
or cx, ax
je 0x180027dbe
jmp case.0x180027d4a.6
mov esi, 4
cmp dword [r13], 0x44414548
je 0x180027dbe
jmp case.0x180027d4a.6
mov eax, dword [r13]
mov ecx, 0x43415254
xor eax, ecx
movzx ecx, byte [r13 + 4]
xor ecx, 0x45
mov esi, 5
jmp 0x180027db6
mov eax, dword [r13]
mov ecx, 0x4954504f
xor eax, ecx
mov ecx, dword [r13 + 3]
mov edx, 0x534e4f49
xor ecx, edx
mov esi, 7
or ecx, eax
jne case.0x180027d4a.6
mov rax, qword [rdi + 0x80]
mov qword [rsp + 0x78], rax
xor ebp, ebp
mov rax, qword [rbx]
cmp byte [rax + 0xce], 0
je 0x180027d15
mov r15, qword [rsp + 0x98]
lea rcx, [rsp + 0x268]
call fcn.1800a2810
mov r14, rax
mov rax, rdx
mov r9d, dword [rsp + 0x294]
test r9, r9
mov qword [rsp + 0x120], rdx
je 0x180027e60
mov rcx, qword [rsp + 0x278]
mov rdx, qword [rsp + 0x288]
cmp rdx, r9
jbe 0x180027e2d
cmp byte [rcx + r9], 0xbf
jg 0x180027e33
jmp 0x180028828
jne 0x180028828
cmp r9d, 5
jne 0x180027e60
lea rdx, [0x18010e3fc]
mov r8, r9
call fcn.1800feb60
test eax, eax
sete al
mov dword [rsp + 0x4c], eax
jmp 0x180027e68
mov dword [rsp + 0x4c], 0
mov rcx, r15
call fcn.1800a2810
mov r12, rax
mov rbx, rdx
mov r9d, dword [r15 + 0x2c]
test r9, r9
je 0x180027ec0
mov rcx, qword [r15 + 0x10]
mov rdx, qword [r15 + 0x20]
cmp rdx, r9
jbe 0x180027e98
cmp byte [rcx + r9], 0xbf
jg 0x180027e9e
jmp 0x180028828
jne 0x180028828
cmp r9d, 5
jne 0x180027ec0
lea rdx, [0x18010e3fc]
mov r8, r9
call fcn.1800feb60
test eax, eax
sete r15b
jmp 0x180027ec3
xor r15d, r15d
mov rax, r14
or rax, r12
sete al
test r14, r14
je 0x180027ef7
test r12, r12
je 0x180027ef7
mov r8, qword [rsp + 0x120]
cmp r8, rbx
jne 0x180027ef5
mov rcx, r14
mov rdx, r12
call fcn.1800feb60
test eax, eax
sete al
jmp 0x180027ef7
xor eax, eax
mov r14, rsi
xor r15b, 1
or r15b, byte [rsp + 0x4c]
and r15b, al
mov r12, qword [rsp + 0x80]
mov rsi, r12
mov byte [rsp + 0xc0], r15b
mov rax, qword [0x1801b30a8]
mov rcx, qword [rax]
xor eax, eax
cmp rcx, 4
setne al
mov ecx, 0xff
cmova eax, ecx
test al, al
je 0x180027f46
movzx eax, al
cmp eax, 0xff
jne 0x180028012
mov rax, qword [rsp + 0x90]
mov word [rsp + 0x2c0], ax
lea rax, [rsp + 0x2c0]
mov qword [rsp + 0x150], rax
lea rax, [0x1800e5d80]
mov qword [rsp + 0x158], rax
lea rax, [rsp + 0x98]
mov qword [rsp + 0x160], rax
lea rax, [0x18000ea50]
mov qword [rsp + 0x168], rax
lea rax, [rsp + 0x268]
mov qword [rsp + 0x170], rax
lea rax, [0x1800116d0]
mov qword [rsp + 0x178], rax
lea rax, [0x18010e018]
mov qword [rsp + 0x340], rax
mov qword [rsp + 0x348], 3
mov qword [rsp + 0x360], 0
lea rax, [rsp + 0x150]
mov qword [rsp + 0x350], rax
mov qword [rsp + 0x358], 3
mov edx, 4
lea rcx, [rsp + 0x340]
lea r8, str.ureq::unitC:Users_nero.cargo_registry_srcindex.crates.io_6f17d22bba15001fureq_2.7.0_srcunit.rs
xor r9d, r9d
call fcn.1800a2470
mov r12d, ebp
mov rax, qword [rdi + 0x50]
mov qword [rsp + 0x1a0], rax
movups xmm0, xmmword [rdi + 0x40]
movaps xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movups xmm3, xmmword [rdi + 0x30]
movaps xmmword [rsp + 0x180], xmm3
movaps xmmword [rsp + 0x170], xmm2
movaps xmmword [rsp + 0x160], xmm1
movaps xmmword [rsp + 0x150], xmm0
mov rdx, qword [rsp + 0x68]
cmp rdx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x128]
jne 0x18002807f
lea rcx, [rsp + 0x58]
call fcn.18001fa90
mov rdx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x88]
mov rax, qword [rsp + 0x58]
imul rcx, rdx, 0x58
mov r8, qword [rsp + 0x1a0]
mov qword [rax + rcx + 0x50], r8
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [rax + rcx + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movaps xmm2, xmmword [rsp + 0x170]
movaps xmm3, xmmword [rsp + 0x180]
movups xmmword [rax + rcx + 0x30], xmm3
movups xmmword [rax + rcx + 0x20], xmm2
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x150], 0
mov rcx, rbp
lea rbx, [rsp + 0x150]
mov rdx, rbx
call fcn.180024f20
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x2d0], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x2c0], xmm0
lea rcx, [rsp + 0x2c0]
lea rdx, [rsp + 0xc0]
call fcn.180025f70
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x350], rax
movaps xmm0, xmmword [rsp + 0x2c0]
movaps xmmword [rsp + 0x340], xmm0
mov rax, qword [rdi + 0x58]
mov ecx, dword [rdi + 0x60]
mov dword [rsp + 0x40], ecx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rbp
lea rax, [rsp + 0x340]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x268]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r15
mov r8, r13
mov r9, r14
call fcn.180027050
mov rax, qword [rdi + 0x68]
lock dec qword [rax]
jne 0x1800281c0
mov rcx, r15
call fcn.18001ccc0
mov r14, qword [rsp + 0x70]
mov rax, qword [r14]
lock dec qword [rax]
je 0x1800281ce
test r12b, r12b
jne 0x1800281db
jmp 0x1800281f6
mov r14, qword [rsp + 0x70]
mov rax, qword [r14]
lock dec qword [rax]
jne 0x1800281b0
mov rcx, r14
call fcn.18001cd90
test r12b, r12b
je 0x1800281f6
mov rdx, qword [rdi + 0x80]
test rdx, rdx
je 0x1800281f6
mov rcx, qword [rdi + 0x78]
mov r8d, 1
call fcn.18000b3d0
mov r8d, 0xb0
mov rcx, rdi
lea rdx, [rsp + 0x150]
call fcn.1800fe4e0
mov rdx, qword [rsp + 0x78]
test rdx, rdx
mov r12, rsi
je 0x180028227
mov r8d, 1
mov rcx, r13
call fcn.18000b3d0
mov rdx, qword [rsp + 0x280]
test rdx, rdx
je 0x180027a20
mov rcx, qword [rsp + 0x278]
mov r8d, 1
call fcn.18000b3d0
jmp 0x180027a20
lea rdx, [rsp + 0x154]
lea rsi, [rsp + 0x340]
mov r8d, 0x10c
mov rcx, rsi
call fcn.1800fe4e0
mov r14, qword [rsp + 0x50]
lea rcx, [r14 + 4]
mov r8d, 0x10c
mov rdx, rsi
call fcn.1800fe4e0
mov dword [r14], ebx
mov rsi, qword [rsp + 0x68]
test rsi, rsi
mov r14, qword [rsp + 0x70]
jne 0x18002865a
jmp 0x180028692
mov r13, r15
lea rcx, [rsp + 0x558]
lea rdx, [rsp + 0x450]
mov r8d, 0xd8
call fcn.1800fe4e0
mov rsi, qword [rsp + 0x528]
mov rbx, qword [rsp + 0x530]
mov r14, qword [rsp + 0x538]
movups xmm0, xmmword [rsp + 0x540]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0x550]
mov qword [rsp + 0xb0], rax
mov r15, qword [rsp + 0x58]
movups xmm6, xmmword [rsp + 0x60]
test r14, r14
je 0x180028334
lea r12, [rsi + 0x18]
jmp 0x180028319
add r12, 0x58
dec r14
je 0x180028334
mov rdx, qword [r12]
test rdx, rdx
je 0x180028310
mov rcx, qword [r12 - 8]
mov r8d, 1
call fcn.18000b3d0
jmp 0x180028310
test rbx, rbx
je 0x18002834b
imul rdx, rbx, 0x58
mov r8d, 8
mov rcx, rsi
call fcn.18000b3d0
mov rsi, qword [rsp + 0x50]
lea rcx, [rsi + 8]
lea rdx, [rsp + 0x558]
mov r8d, 0xd8
call fcn.1800fe4e0
mov qword [rsi + 0xe0], r15
movups xmmword [rsi + 0xe8], xmm6
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [rsi + 0xf8], xmm0
mov rax, qword [rsp + 0xb0]
mov qword [rsi + 0x108], rax
mov dword [rsi], 3
mov r12, qword [rsp + 0x80]
mov r14, qword [rsp + 0x70]
mov r15, r13
jmp 0x1800286b0
add rax, 0xc8
mov qword [rsp + 0x340], rax
lea rax, [0x1800e5fc0]
mov qword [rsp + 0x348], rax
lea rax, str.reached_max_redirects___
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], 2
mov qword [rsp + 0x170], 0
lea rax, [rsp + 0x340]
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], 1
mov rsi, qword [rsp + 0x50]
lea rcx, [rsi + 0x60]
lea rdx, [rsp + 0x150]
call fcn.1800dd740
mov dword [rsi + 8], 2
mov qword [rsi + 0x78], 0
mov byte [rsi + 0x88], 5
mov dword [rsi], 2
jmp 0x18002863e
movzx ebx, byte [rsp + 0x2c4]
lea rax, [rsp + 0x130]
mov qword [rsp + 0x140], rax
lea rax, [0x180006710]
mov qword [rsp + 0x148], rax
lea rax, str.Bad_redirection:
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], 1
mov qword [rsp + 0x170], 0
lea rax, [rsp + 0x140]
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], 1
lea rcx, [rsp + 0x318]
lea rdx, [rsp + 0x150]
call fcn.1800dd740
movups xmm0, xmmword [rsp + 0x318]
movups xmmword [rsp + 0x1a4], xmm0
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x1b4], rax
movzx eax, byte [0x1801b3bd1]
mov ecx, 1
mov edx, 1
call fcn.18000b3c0
test rax, rax
je 0x18002884f
mov r12, r15
mov byte [rax], bl
movups xmm0, xmmword [rsp + 0x1ac]
movups xmmword [rsp + 0x39c], xmm0
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x390], xmm0
movups xmm0, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x380], xmm0
movups xmm1, xmmword [rsp + 0x150]
movups xmm2, xmmword [rsp + 0x160]
movups xmm3, xmmword [rsp + 0x170]
movups xmm4, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x370], xmm4
movaps xmmword [rsp + 0x360], xmm3
movaps xmmword [rsp + 0x350], xmm2
movaps xmmword [rsp + 0x340], xmm1
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xd0], xmm2
movaps xmmword [rsp + 0xe0], xmm3
movaps xmmword [rsp + 0xf0], xmm4
movaps xmmword [rsp + 0x100], xmm0
mov ecx, dword [rsp + 0x390]
mov dword [rsp + 0x110], ecx
mov rcx, qword [rsp + 0x3a4]
mov rdx, qword [rsp + 0x50]
mov qword [rdx + 0x70], rcx
movups xmm0, xmmword [rsp + 0x394]
movups xmmword [rdx + 0x60], xmm0
mov qword [rdx + 0x78], rax
lea rax, fcn.180001000
mov qword [rdx + 0x80], rax
mov qword [rdx + 0x88], 0
mov dword [rdx + 8], 2
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movaps xmm2, xmmword [rsp + 0xe0]
movaps xmm3, xmmword [rsp + 0xf0]
movups xmmword [rdx + 0xc], xmm0
movups xmmword [rdx + 0x1c], xmm1
movups xmmword [rdx + 0x2c], xmm2
movups xmmword [rdx + 0x3c], xmm3
movaps xmm0, xmmword [rsp + 0x100]
movups xmmword [rdx + 0x4c], xmm0
mov eax, dword [rsp + 0x110]
mov dword [rdx + 0x5c], eax
mov dword [rdx], 2
mov r15, rbp
lea rcx, [rsp + 0x450]
call fcn.180001210
mov rsi, qword [rsp + 0x68]
test rsi, rsi
mov r14, qword [rsp + 0x70]
je 0x180028692
mov rbx, qword [rsp + 0x58]
add rbx, 0x18
jmp 0x180028679
add rbx, 0x58
dec rsi
je 0x180028692
mov rdx, qword [rbx]
test rdx, rdx
je 0x180028670
mov rcx, qword [rbx - 8]
mov r8d, 1
call fcn.18000b3d0
jmp 0x180028670
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1800286b0
mov rcx, qword [rsp + 0x58]
imul rdx, rax, 0x58
mov r8d, 8
call fcn.18000b3d0
mov rax, qword [r15]
lock dec qword [rax]
jne 0x180028742
mov rcx, r15
call fcn.18001ccc0
mov rax, qword [r14]
lock dec qword [rax]
je 0x18002874f
mov rdx, qword [rdi + 0x80]
test rdx, rdx
je 0x1800286ed
mov rcx, qword [rdi + 0x78]
mov r8d, 1
call fcn.18000b3d0
mov rdx, qword [rdi + 0x18]
test rdx, rdx
je 0x180028705
mov rcx, qword [rdi + 0x10]
mov r8d, 1
call fcn.18000b3d0
mov rsi, qword [rdi + 0xa0]
test rsi, rsi
je 0x180028769
mov rbx, qword [rdi + 0x90]
add rbx, 8
jmp 0x180028729
add rbx, 0x20
dec rsi
je 0x180028769
mov rdx, qword [rbx]
test rdx, rdx
je 0x180028720
mov rcx, qword [rbx - 8]
mov r8d, 1
call fcn.18000b3d0
jmp 0x180028720
mov rax, qword [r14]
lock dec qword [rax]
jne 0x1800286d2
mov rcx, r14
call fcn.18001cd90
mov rdx, qword [rdi + 0x80]
test rdx, rdx
jne 0x1800286de
jmp 0x1800286ed
mov rdx, qword [rdi + 0x98]
test rdx, rdx
je 0x180028788
mov rcx, qword [r12]
shl rdx, 5
mov r8d, 8
call fcn.18000b3d0
mov rax, qword [rsp + 0x50]
movaps xmm6, xmmword [rsp + 0x630]
add rsp, 0x648
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r13, rbx
lea rcx, [rsp + 0x558]
lea rdx, [rsp + 0x450]
mov r8d, 0xd8
call fcn.1800fe4e0
mov rsi, qword [rsp + 0x528]
mov rbx, qword [rsp + 0x530]
mov r14, qword [rsp + 0x538]
movups xmm0, xmmword [rsp + 0x540]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0x550]
mov qword [rsp + 0xb0], rax
mov rdx, qword [rsp + 0x280]
test rdx, rdx
je 0x1800282f6
mov rcx, qword [rsp + 0x278]
mov r8d, 1
call fcn.18000b3d0
jmp 0x1800282f6
lea rax, [0x18010ddf0]
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.180102d80
ud2
mov ecx, 1
mov edx, 3
call fcn.180102420
ud2
mov ecx, 1
mov edx, 1
call fcn.180102420
ud2