Function at 0x61c2bc
Capabilities:
Get file size

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
push rbx
push rsi
push rdi
sub rsp, 0x140
mov qword [rsp + 0x90], 0xfffffffffffffffe
mov rsi, rdx
and dword [rax + 0x20], 0
lea r8, [rax + 0x18]
lea rdx, [0x007986b0]
mov rcx, rsi
call fcn.004021a8
mov dword [rsp + 0x178], 1
lea r8, [0x007bdf28]
lea rdx, str.__h1_Webserver_Logs__h1_
mov rcx, rsi
call fcn.0040289c
mov rbx, qword [0x00862cb8]
cmp byte [rbx + 0x2e9d], 0
jne 0x61c33f
mov rcx, qword [rbx + 0xb8]
test rcx, rcx
je 0x61c33f
mov edx, 0x1d
call fcn.004083bc
mov rdi, rax
jmp 0x61c346
lea rdi, [rbx + 0x630]
cmp byte [rbx + 0x2e96], 0
jne 0x61c367
mov rcx, qword [rbx + 0xb8]
test rcx, rcx
je 0x61c367
mov edx, reloc.WS2_32.dll_shutdown
call fcn.004083bc
jmp 0x61c36e
lea rax, [rbx + 0x4e0]
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0x110]
call fcn.00402448
mov rdx, rax
lea rcx, [rsp + 0x98]
call fcn.0058904c
nop
mov r9d, 1
mov r8d, 0x80000000
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x28]
call fcn.005944d4
nop
lea rdx, [rsp + 0x170]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
or edx, 0xffffffff
cmp eax, edx
jne 0x61c3dd
lea rcx, [rsp + 0x170]
call fcn.00594950
mov rcx, rax
jmp 0x61c3ed
mov ecx, dword [rsp + 0x170]
shl rcx, 0x20
mov eax, eax
or rcx, rax
mov ebx, 0x8000
cmp rcx, rbx
jle 0x61c41f
lea rax, [rcx - 0x8000]
sar rax, 0x20
mov dword [rsp + 0x20], eax
xor r9d, r9d
lea r8, [rsp + 0x20]
lea edx, [rcx - 0x8000]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov rax, qword [0x00862cb8]
cmp byte [rax + 0x30bc], 0
jne 0x61c447
mov rcx, qword [rax + 0xb8]
test rcx, rcx
je 0x61c447
mov edx, 0x23c
call fcn.0041024c
jmp 0x61c44d
mov al, byte [rax + 0x2cdd]
test al, al
je 0x61c593
mov r8, rbx
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x28]
call fcn.00595438
nop
lea r8, [0x0078cb38]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.0049cb7c
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.004446d4
nop
lea rcx, [rsp + 0xc8]
call fcn.00401d58
nop
lea rax, [rsp + 0xe0]
mov rcx, qword [rsp + 0x108]
cmp rcx, rax
je 0x61c4d9
test rcx, rcx
je 0x61c4d9
mov rdx, qword [rsp + 0xe0]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x61c4d4
call fcn.006a4944
jmp 0x61c4d9
call fcn.006a3610
mov rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
sub rcx, r9
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rdi, rdx
sar rdi, 3
mov rax, rdi
shr rax, 0x3f
add rdi, rax
lea rax, [rdi - 0xb]
xor ebx, ebx
cmp rdi, 0xb
cmova rbx, rax
lea rax, [rdi - 1]
cmp rbx, rax
jae 0x61c587
lea r8, [rbx + rbx*2]
shl r8, 4
add r8, r9
lea rdx, str._br___nbsp_
lea rcx, [rsp + 0x58]
call fcn.0040fe34
nop
mov r8, qword [rax + 0x20]
mov rdx, qword [rax + 0x28]
mov rcx, rsi
call fcn.00402720
nop
lea rax, [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
cmp rcx, rax
je 0x61c57d
test rcx, rcx
je 0x61c57d
mov rdx, qword [rsp + 0x58]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x61c578
call fcn.006a4944
jmp 0x61c57d
call fcn.006a3610
inc rbx
mov r9, qword [rsp + 0x40]
jmp 0x61c512
lea rcx, [rsp + 0x40]
call fcn.00401d58
jmp 0x61c5a9
lea r8, [0x007bdf6a]
lea rdx, str._br___nbsp_Webserver_logging_not_enabled.
mov rcx, rsi
call fcn.00402720
lea rcx, [rsp + 0x28]
call fcn.0059492c
nop
lea rax, [0x007955b8]
mov qword [rsp + 0x28], rax
lea rax, [0x007955c8]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x28]
call fcn.0059492c
lea r11, [0x007955f8]
mov qword [rsp + 0x30], r11
lea rax, [0x007955e8]
mov qword [rsp + 0x28], rax
jmp 0x61c5f8
lea rax, [rsp + 0x98]
mov rcx, qword [rsp + 0xc0]
cmp rcx, rax
je 0x61c632
test rcx, rcx
je 0x61c632
mov rdx, qword [rsp + 0x98]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x61c62d
call fcn.006a4944
jmp 0x61c632
call fcn.006a3610
mov rax, rsi
add rsp, 0x140
pop rdi
pop rsi
pop rbx
ret