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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x10
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov eax, edx
or eax, esi
je 0x49f78f
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
xor ebx, ebx
test byte [ebp + 0x1e8], 1
jne 0x49f50c
test edx, edx
sete al
test esi, esi
setne dl
or dl, al
jne 0x49f57b
mov eax, 0xfffffda2
cmp dword [ebp + 0x168], 0
jne 0x49f65d
mov edx, ebp
call fcn.0049ffc0
mov ecx, eax
xor eax, eax
test ecx, ecx
je 0x49f65d
push 0x239
push str.nghttp3_conn.c
push 0xa3767d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
mov dword [esp], edi
xor edi, edi
mov eax, dword [ebp + 0x158]
mov ecx, dword [ebp + 0x15c]
add eax, 1
adc ecx, 0
mov edx, 4
cmp edx, eax
sbb ebx, ecx
jb case.0x49f532.2
jmp dword [eax*4 + 0xa373f0]
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx + 0x68]
test eax, eax
je 0x49f64b
push dword [ebp + 0x124]
push dword [ecx + 0x420]
push 0
push 0x103
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push ecx
call eax
add esp, 0x1c
mov ecx, eax
mov eax, 0xfffffc7a
test ecx, ecx
jne 0x49f65d
jmp 0x49f64b
mov dword [esp], edi
test esi, esi
je 0x49f7a4
lea edi, [ebp + 0x160]
push dword [esp + 0x34]
push esi
push dword [esp + 0x34]
push edi
call fcn.004a33a0
add esp, 0x10
mov dword [esp + 8], eax
test eax, eax
js 0x49f658
cmp dword [ebp + 0x168], 0
je 0x49f665
test byte [ebp + 0x1e8], 1
mov edi, dword [esp + 8]
jne 0x49f77f
mov eax, esi
cmp esi, edi
je 0x49f65d
push 0x242
push str.nghttp3_conn.c
push str._size_t_nread__srclen
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
mov eax, 0xfffffda3
cmp dword [esp + 0x34], 0
mov ecx, dword [esp + 0x24]
jne 0x49f65d
push esi
push dword [esp + 4]
push ecx
call fcn.004a0d30
jmp 0x49f625
mov eax, 0xfffffda3
cmp dword [esp + 0x34], 0
mov ecx, dword [esp + 0x24]
jne 0x49f65d
add ecx, 0x150
push esi
push dword [esp + 4]
push ecx
call fcn.004ad430
add esp, 0xc
jmp 0x49f649
mov eax, 0xfffffda3
cmp dword [esp + 0x34], 0
mov ecx, dword [esp + 0x24]
jne 0x49f65d
push esi
push dword [esp + 4]
push ebp
push ecx
call fcn.004a00d0
add esp, 0x10
mov esi, eax
xor eax, eax
test esi, esi
cmovs edi, eax
add edi, esi
mov eax, edi
jmp 0x49f65d
mov eax, 0xfffffda2
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [edi]
mov dword [esp + 4], 0
mov ecx, 3
mov dword [esp + 0xc], eax
cmp ecx, eax
mov eax, dword [esp + 4]
sbb eax, dword [edi + 4]
setb byte [esp + 4]
push edi
call fcn.004a3370
add esp, 4
cmp byte [esp + 4], 0
jne case.default.0x49f6ab
mov eax, 0xfffffd9f
mov edi, dword [esp + 8]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0xc]
jmp dword [ecx*4 + 0xa373e0]
movzx ecx, word [edx + 0x428]
test cl, 2
jne 0x49f65d
or ecx, 2
mov word [edx + 0x428], cx
mov dword [ebp + 0x15c], 0
mov dword [ebp + 0x158], 0
mov dword [ebp + 0x1a0], 0
or byte [ebp + 0x1e8], 1
jmp 0x49f77f
mov dword [ebp + 0x15c], 0xffffffff
mov dword [ebp + 0x158], 0xffffffff
or byte [ebp + 0x1e8], 1
mov edi, dword [esp + 8]
sub esi, edi
je 0x49f654
add dword [esp], edi
jmp 0x49f511
push 0x22d
push str.nghttp3_conn.c
push str.srclen__fin
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
push 0x1f3
push str.nghttp3_conn.c
push str.srclen
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
push str.nghttp3_conn_read_uni
push 0x26a
push str.nghttp3_conn.c
call fcn.004a6d60
nop dword [eax]