Function at 0x40c8d0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2120
call fcn.00445a80
mov eax, dword [0x4635a0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push ebx
push 0x4642fc
call fcn.0040123a
mov esi, eax
add esp, 8
mov dword [ebp - 0x2120], esi
test esi, esi
je 0x40cd36
jmp 0x40c910
mov dword [ebp - 0x2110], 0
test ebx, ebx
jne 0x40c978
push 0x2000
lea eax, [ebp - 0x2004]
push eax
push ebx
call dword [sym.imp.MSVCR120.dll__read]
add esp, 0xc
mov dword [ebp - 0x210c], eax
test eax, eax
jle 0x40cad9
cmp dword [0x463c68], ebx
je 0x40c96c
push 0x463ed4
lea eax, [ebp - 0x2110]
push eax
lea eax, [ebp - 0x210c]
push eax
lea eax, [ebp - 0x2004]
push eax
call fcn.00401032
add esp, 0x10
mov dword [ebp - 0x211c], 0
jmp 0x40c9a2
lea eax, [ebp - 0x211c]
push eax
push 0x2000
lea eax, [ebp - 0x2004]
push eax
push esi
call fcn.0040128f
add esp, 0x10
mov dword [ebp - 0x210c], eax
test eax, eax
jle 0x40cbae
cmp dword [0x463c18], 1
jle 0x40c9b9
push ebx
push str.Handling_data_from_client__d._n
call fcn.004011ea
add esp, 8
mov eax, dword [ebp - 0x2110]
lea edx, [ebp - 0x2004]
test eax, eax
mov dword [ebp - 0x2114], 0
cmovne edx, eax
cmp dword [0x463c48], 0
mov dword [ebp - 0x2118], edx
je 0x40ca22
lea eax, [ebp - 0x210c]
push eax
push ebx
push dword [ebp - 0x210c]
push edx
call fcn.0040aa90
add esp, 0x10
mov dword [ebp - 0x2114], eax
test eax, eax
jne 0x40ca1c
cmp dword [0x463c14], eax
je 0x40ca22
push ebx
push str.Error_formatting_chat_message_from_fd__d_n
call fcn.004011ea
add esp, 8
jmp 0x40ca22
mov dword [ebp - 0x2118], eax
mov eax, dword [0x4640f0]
lea edi, [ebp - 0x2108]
mov ecx, 0x41
mov esi, 0x4640f0
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
test eax, eax
je 0x40ca8b
nop
cmp dword [ebp + ecx*4 - 0x2104], ebx
je 0x40ca50
inc ecx
cmp ecx, eax
jb 0x40ca40
jmp 0x40ca8b
dec eax
cmp ecx, eax
jae 0x40ca7e
jmp 0x40ca60
mov eax, dword [ebp + ecx*4 - 0x2100]
mov dword [ebp + ecx*4 - 0x2104], eax
inc ecx
mov edx, dword [ebp - 0x2108]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x40ca60
jmp 0x40ca84
mov edx, dword [ebp - 0x2108]
dec edx
mov dword [ebp - 0x2108], edx
push dword [ebp - 0x210c]
lea eax, [ebp - 0x2108]
push dword [ebp - 0x2118]
push 0x46430c
push eax
call fcn.0040101e
push dword [ebp - 0x2114]
mov edi, dword [sym.imp.MSVCR120.dll_free]
call edi
push dword [ebp - 0x2110]
call edi
add esp, 0x18
cmp dword [ebp - 0x211c], 0
je 0x40cd25
mov esi, dword [ebp - 0x2120]
jmp 0x40c910
cmp dword [ebp - 0x210c], 0
jge 0x40cb0e
cmp dword [0x463c14], 0
je 0x40cb07
call dword [sym.imp.MSVCR120.dll__errno]
push dword [eax]
call dword [sym.imp.MSVCR120.dll_strerror]
push eax
push str.Error_reading_from_stdin:__s_n
call fcn.004011ea
add esp, 0xc
cmp dword [ebp - 0x210c], 0
jne 0x40cb26
cmp dword [0x463c18], 0
je 0x40cb26
push str.EOF_on_stdin_n
call fcn.004011ea
add esp, 4
mov edx, dword [0x463ee0]
xor ecx, ecx
test edx, edx
je 0x40cb93
cmp dword [ecx*4 + 0x463ee4], 0
je 0x40cb5c
inc ecx
cmp ecx, edx
jb 0x40cb32
pop edi
pop esi
mov dword [0x463ed0], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044590e
mov esp, ebp
pop ebp
ret
lea eax, [edx - 1]
cmp ecx, eax
jae 0x40cb8c
jmp 0x40cb70
mov eax, dword [ecx*4 + 0x463ee8]
mov dword [ecx*4 + 0x463ee4], eax
inc ecx
mov edx, dword [0x463ee0]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x40cb70
dec edx
mov dword [0x463ee0], edx
pop edi
pop esi
mov dword [0x463ed0], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044590e
mov esp, ebp
pop ebp
ret
cmp dword [0x463c18], 0
je 0x40cbc4
push str.Closing_connection._n
call fcn.004011ea
add esp, 4
cmp dword [0x463cd0], 0
je 0x40cbf7
mov eax, dword [esi + 0x88]
test eax, eax
je 0x40cbf7
cmp dword [ebp - 0x210c], 0
jne 0x40cbe9
push eax
call sub.libssl_1_1.dll_SSL_shutdown
add esp, 4
push dword [esi + 0x88]
call sub.libssl_1_1.dll_SSL_free
add esp, 4
push ebx
call dword [sym.imp.WS2_32.dll_closesocket]
mov edx, dword [0x463ee0]
xor ecx, ecx
test edx, edx
je 0x40cc53
lea ebx, [ebx]
cmp dword [ecx*4 + 0x463ee4], ebx
je 0x40cc20
inc ecx
cmp ecx, edx
jb 0x40cc10
jmp 0x40cc53
lea eax, [edx - 1]
cmp ecx, eax
jae 0x40cc4c
jmp 0x40cc30
mov eax, dword [ecx*4 + 0x463ee8]
mov dword [ecx*4 + 0x463ee4], eax
inc ecx
mov edx, dword [0x463ee0]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x40cc30
dec edx
mov dword [0x463ee0], edx
push ebx
push 0x4642fc
call fcn.0040114a
mov edx, dword [0x4640f0]
add esp, 8
xor ecx, ecx
test edx, edx
je 0x40ccb3
lea ecx, [ecx]
cmp dword [ecx*4 + 0x4640f4], ebx
je 0x40cc80
inc ecx
cmp ecx, edx
jb 0x40cc70
jmp 0x40ccb3
lea eax, [edx - 1]
cmp ecx, eax
jae 0x40ccac
jmp 0x40cc90
mov eax, dword [ecx*4 + 0x4640f8]
mov dword [ecx*4 + 0x4640f4], eax
inc ecx
mov edx, dword [0x4640f0]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x40cc90
dec edx
mov dword [0x4640f0], edx
push ebx
push 0x46430c
call fcn.0040114a
add esp, 8
dec dword [0x463ed8]
jne 0x40cd13
mov edx, dword [0x463ee0]
xor ecx, ecx
test edx, edx
je 0x40cd13
cmp dword [ecx*4 + 0x463ee4], 0
je 0x40cce6
inc ecx
cmp ecx, edx
jb 0x40ccd5
jmp 0x40cd13
lea eax, [edx - 1]
cmp ecx, eax
jae 0x40cd0c
lea ecx, [ecx]
mov eax, dword [ecx*4 + 0x463ee8]
mov dword [ecx*4 + 0x463ee4], eax
inc ecx
mov edx, dword [0x463ee0]
lea eax, [edx - 1]
cmp ecx, eax
jb 0x40ccf0
dec edx
mov dword [0x463ee0], edx
cmp dword [0x463c48], 0
je 0x40cd25
push ebx
call fcn.0040aa00
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0044590e
mov esp, ebp
pop ebp
ret
push str.fdn___NULL
push str.assertion_failed:__s
call fcn.004010f0
int3