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

Disassembly:
push esi
mov esi, ecx
mov eax, dword [esi + 0x68]
cmp eax, dword [esi + 0x64]
je 0x4bff1f
xor eax, eax
pop esi
ret
mov ecx, dword [esi + 0x20]
push 0
push dword [esi + 0x60]
mov dword [esi + 0xac], edx
mov edx, dword [esi + 0x40]
mov dword [esi + 0x68], 0
mov dword [esi + 0x64], 0
call fcn.004c1d80
add esp, 8
mov dword [esi + 0x40], 0
mov dword [esi + 0x60], 0
mov eax, 1
pop esi
ret
sub esp, 0xc
push ebx
push ebp
push esi
mov esi, ecx
push edi
cmp byte [esi + 0xdc], 0
jne case.0x4c05bc.4
mov eax, dword [esi + 0xac]
cmp eax, 0x15
ja case.default.0x4c05bc
movzx eax, byte [eax + 0x4c09bc]
jmp dword [eax*4 + 0x4c0988]
mov ecx, dword [esi + 0x80]
mov eax, 0x19
sub eax, ecx
push eax
lea eax, [ecx + str.HTTP_1.1_100_Continue_r_n_r_n]
push eax
mov eax, dword [esi + 0xd4]
push esi
call eax
add esp, 0xc
test eax, eax
jns 0x4c0619
cmp eax, 0xfffff3ff
je case.0x4c05bc.4
push dword [esi + 0x30]
push str.Failed_to_send_data_in_request_for__s._n
push dword [esi + 0x10]
call fcn.004c1e90
add esp, 0xc
mov edx, 1
mov ecx, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp fcn.004bdd20
add dword [esi + 0x80], eax
mov ecx, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp fcn.004c0430
push 0x541758
push 0xbb3
push 0x54171c
push 0x5416ec
jmp 0x4c095a
mov eax, dword [esi + 0x68]
sub eax, dword [esi + 0x64]
push eax
mov eax, dword [esi + 0x40]
add eax, dword [esi + 0x64]
push eax
mov eax, dword [esi + 0xd4]
push esi
call eax
add esp, 0xc
test eax, eax
jns 0x4c0679
cmp eax, 0xfffff3ff
je case.0x4c05bc.4
mov ecx, str.Connection_was_closed_while_sending_response_headers._n
jmp 0x4c0887
add dword [esi + 0x64], eax
mov ecx, esi
call fcn.004c0430
cmp dword [esi + 0xac], 0xa
jne case.0x4c05bc.4
mov edx, 0xb
mov ecx, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp 0x4bff10
mov edi, dword [esi + 0x1c]
mov ecx, dword [esi + 0x7c]
mov eax, dword [esi + 0x78]
cmp ecx, dword [edi + 0x3c]
ja 0x4c076d
jb 0x4c06c0
cmp eax, dword [edi + 0x38]
jae 0x4c0770
cmp dword [edi + 0xc], 0
lea ebx, [edi + 0x1c]
je 0x4c06d0
push ebx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, esi
call fcn.004bddc0
cmp eax, 1
jne case.0x4c05bc.4
mov ecx, dword [esi + 0x78]
sub ecx, dword [edi + 0x40]
mov eax, dword [esi + 0x7c]
sbb eax, dword [edi + 0x44]
jne 0x4c0789
cmp ecx, 0xffffffff
ja 0x4c0789
mov eax, dword [edi + 0x50]
sub eax, ecx
push eax
mov eax, dword [edi + 4]
add eax, ecx
push eax
mov eax, dword [esi + 0xd4]
push esi
call eax
add esp, 0xc
mov ebp, eax
cmp dword [edi + 0xc], 0
je 0x4c0722
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test ebp, ebp
jns 0x4c0754
cmp ebp, 0xfffff3ff
je case.0x4c05bc.4
push dword [esi + 0x30]
push str.Failed_to_send_data_in_request_for___s._n
push dword [esi + 0x10]
call fcn.004c1e90
add esp, 0xc
mov edx, 1
mov ecx, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp fcn.004bdd20
mov eax, ebp
mov ecx, esi
cdq
add dword [esi + 0x78], eax
adc dword [esi + 0x7c], edx
call fcn.004c0430
mov edi, dword [esi + 0x1c]
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x7c]
cmp eax, dword [edi + 0x38]
jne case.0x4c05bc.4
cmp ecx, dword [edi + 0x3c]
jne case.0x4c05bc.4
mov dword [esi + 0xac], 0x12
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.Data_offset_exceeds_limit
push 0xbe7
push 0x54165c
push dword [0x545874]
call dword [0x545870]
add esp, 0x10
nop word [eax + eax]
push 0x54162c
push 0xc0e
push 0x5415f0
push 0x5415c0
jmp 0x4c095a
mov eax, dword [esi + 0x68]
sub eax, dword [esi + 0x64]
push eax
mov eax, dword [esi + 0x40]
add eax, dword [esi + 0x64]
push eax
mov eax, dword [esi + 0xd4]
push esi
call eax
add esp, 0xc
test eax, eax
jns 0x4c07f8
cmp eax, 0xfffff3ff
je case.0x4c05bc.4
mov ecx, str.Connection_was_closed_while_sending_response_body._n
jmp 0x4c0887
add dword [esi + 0x64], eax
mov ecx, esi
call fcn.004c0430
cmp dword [esi + 0xac], 0xe
jne case.0x4c05bc.4
mov ecx, dword [esi + 0x1c]
mov eax, dword [ecx + 0x38]
cmp eax, dword [esi + 0x78]
jne 0x4c0827
mov eax, dword [ecx + 0x3c]
mov edx, 0x10
cmp eax, dword [esi + 0x7c]
je 0x4c082c
mov edx, 0xf
mov ecx, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp 0x4bff10
push 0x541588
push 0xc2a
push 0x54154c
push 0x54151c
jmp 0x4c095a
mov eax, dword [esi + 0x68]
sub eax, dword [esi + 0x64]
push eax
mov eax, dword [esi + 0x40]
add eax, dword [esi + 0x64]
push eax
mov eax, dword [esi + 0xd4]
push esi
call eax
add esp, 0xc
test eax, eax
jns 0x4c08a7
cmp eax, 0xfffff3ff
je case.0x4c05bc.4
mov ecx, 0x5414e8
mov eax, dword [esi + 0x10]
push ecx
push eax
call fcn.004c1e90
add esp, 8
mov edx, 1
mov ecx, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp fcn.004bdd20
add dword [esi + 0x64], eax
mov ecx, esi
call fcn.004c0430
cmp dword [esi + 0xac], 0x11
jne case.0x4c05bc.4
pop edi
mov ecx, esi
mov edx, 0x12
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp 0x4bff10
push 0x5414e4
push 0xc42
push 0x5414a8
push 0x541478
jmp 0x4c095a
push 0x541474
push 0xc47
push 0x541438
push 0x541408
jmp 0x4c095a
push 0x541404
push 0xc4b
push 0x5413c8
push 0x541398
jmp 0x4c095a
push 0x541394
push 0xc4f
push 0x541358
push 0x541328
jmp 0x4c095a
push 0x54180c
push 0xb8f
push 0x5417d0
push 0x5417a0
push 2
call fcn.004cb8fa
add esp, 4
push eax
call fcn.004038b0
add esp, 0x14
push 2
call fcn.004cb8fa
add esp, 4
push eax
call fcn.004cd32e
add esp, 4
call fcn.004cebb9
nop dword [eax]
inc esi
or dword [eax + eax - 127], ecx
pop es
dec esp
add bl, al
add eax, 0x62d004c
dec esp
add byte [esi + 6], al
dec esp
add byte [ebx - 0x4fffb3fa], ah
pop es
dec esp
add cl, cl
pop es
dec esp
add byte [eax + 8], al
dec esp
add byte [ecx + 8], bl
dec esp
add cl, dl
or byte [eax + eax - 0x10], cl
or byte [eax + eax + 0x10], cl
or dword [eax + eax], ecx
add byte [eax], al
add byte [ecx], al
add al, byte [ebx]
add eax, dword [ebx]
add eax, dword [ecx + eax]
add eax, 134743814
or dword [edx], ecx
add dword [ebx], ecx
or al, 204
int3