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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xec]
cmp eax, dword [ecx + 8]
jbe 0x5fdfe0
sub esp, 0x16c
lea eax, [0x677b20]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00404960
mov eax, dword [esp + 8]
mov dword [esp + 0xb8], eax
call fcn.0040ba40
mov eax, dword [esp]
mov dword [esp + 0xb4], eax
call fcn.0040ba40
mov eax, dword [esp]
mov dword [esp + 0xb0], eax
lea ecx, [0x677b20]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.00404960
mov eax, dword [esp + 8]
mov dword [esp + 0xac], eax
lea ecx, [0x6b13c0]
mov dword [esp], ecx
call fcn.0040af90
mov edi, dword [esp + 4]
mov eax, dword [0xa43e50]
test eax, eax
jne 0x5fd3ba
mov ecx, dword [esp + 0x170]
mov dword [edi], ecx
jmp 0x5fd3c8
mov eax, dword [esp + 0x170]
call fcn.0045f670
mov ecx, eax
mov edx, dword [esp + 0x174]
mov dword [edi + 4], edx
mov edx, dword [0xa43e50]
test edx, edx
jne 0x5fd3f2
mov edx, dword [esp + 0x178]
mov dword [edi + 8], edx
mov ebx, dword [esp + 0xb8]
mov dword [edi + 0x1c], ebx
jmp 0x5fd418
lea edx, [edi + 8]
mov eax, dword [esp + 0x178]
mov ebx, edi
mov edi, edx
call fcn.0045f670
lea edi, [ebx + 0x1c]
mov edx, eax
mov eax, dword [esp + 0xb8]
call fcn.0045f670
mov edi, ebx
mov dword [edi + 0x6c], 1
mov dword [edi + 0xa4], 0x4000
mov dword [edi + 0xb8], 0xffff
mov dword [edi + 0xa8], 0x64
mov dword [edi + 0xac], 0xffffffff
mov dword [edi + 0xb0], 0xffffffff
mov ebx, dword [0xa43e50]
test ebx, ebx
jne 0x5fd467
mov ebx, dword [esp + 0xb4]
mov dword [edi + 0x64], ebx
jmp 0x5fd47c
lea ebx, [edi + 0x64]
mov eax, dword [esp + 0xb4]
mov ebp, edi
mov edi, ebx
call fcn.0045f670
mov edi, ebp
movzx ebx, byte [esp + 0x17c]
mov byte [edi + 0x18], bl
mov byte [edi + 0x54], 1
mov ebx, dword [0xa43e50]
test ebx, ebx
jne 0x5fd4ae
mov eax, dword [esp + 0xb0]
mov dword [edi + 0x74], eax
mov eax, dword [esp + 0xac]
mov dword [edi + 0xbc], eax
jmp 0x5fd4d5
lea ebx, [edi + 0x74]
mov eax, dword [esp + 0xb0]
mov ebp, edi
mov edi, ebx
call fcn.0045f670
lea edi, [ebp + 0xbc]
mov eax, dword [esp + 0xac]
call fcn.0045f670
mov edi, ebp
mov eax, dword [ecx + 0x48]
test eax, eax
je 0x5fd4e7
mov ebx, dword [eax + 0x7c]
mov eax, dword [eax + 0x80]
jmp 0x5fd4eb
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x9c], edi
test eax, eax
xchg ebp, ebx
setne bl
xchg ebp, ebx
test ebx, ebx
xchg esi, ebx
setne bl
xchg esi, ebx
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5fd5b6
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], eax
mov dword [edi + 0x28], ebx
mov dword [edi + 0x2c], eax
lea ecx, [0x686680]
mov dword [esp], ecx
call fcn.0040af90
mov eax, dword [esp + 4]
lea ecx, [0x628570]
mov dword [eax], ecx
mov ecx, dword [0xa43e50]
test ecx, ecx
jne 0x5fd54e
mov ecx, dword [esp + 0x9c]
mov dword [eax + 4], ecx
jmp 0x5fd561
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x9c]
call fcn.0045f670
mov eax, ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.0047efe0
mov eax, dword [0xa43e50]
mov ecx, dword [esp + 0xc]
test eax, eax
jne 0x5fd593
mov eax, dword [esp + 0x9c]
mov dword [eax + 0x30], ecx
jmp 0x5fd5a6
mov edx, dword [esp + 0x9c]
lea edi, [edx + 0x30]
mov eax, ecx
call fcn.0045f670
mov eax, edx
mov ecx, dword [esp + 0x170]
mov edx, dword [esp + 0x178]
mov edi, eax
movzx eax, byte [0xa43989]
test al, al
je 0x5fd67b
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x1c]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
lea edx, [0x6b2700]
mov dword [esp + 0xc0], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 0xc4], edx
test eax, eax
je 0x5fd62a
mov eax, dword [eax + 4]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
movzx eax, byte [0xa43989]
test al, al
je 0x5fd67b
lea eax, [0x6c882d]
mov dword [esp], eax
mov dword [esp + 4], 0x2e
lea eax, [esp + 0xc0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.005ce070
mov edx, dword [esp + 0x9c]
lea eax, [0x69a640]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
lea ecx, [0x896128]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
lea edx, [ecx + 0x34]
mov ebx, dword [0xa43e50]
test ebx, ebx
jne 0x5fd6b1
mov dword [eax + 4], edx
mov dword [ecx + 0x3c], eax
jmp 0x5fd6c7
lea edi, [eax + 4]
mov ebx, eax
mov eax, edx
call fcn.0045f670
lea edi, [ecx + 0x3c]
mov eax, ebx
call fcn.0045f670
mov edx, dword [ecx + 0x40]
lea ebx, [edx + 0xffff]
cmp ebx, 0xffff
xchg ebp, ebx
setg bl
xchg ebp, ebx
test edx, edx
setg dl
nop
xchg ebp, eax
cmp dl, al
xchg ebp, eax
jne 0x5fd6ec
mov dword [ecx + 0x40], ebx
lea edi, [esp + 0xd0]
xor eax, eax
call fcn.0045f76b
mov ecx, dword [esp + 0x174]
mov dword [esp + 0xd0], ecx
mov edx, dword [esp + 0x178]
mov dword [esp + 0xd4], edx
mov ebx, dword [esp + 0x170]
mov ebp, dword [ebx + 0x3c]
mov esi, dword [ebx + 0x40]
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xdc], esi
mov ebp, dword [esp + 0x9c]
lea esi, [ebp + 0xd0]
mov dword [esp + 0xe0], esi
lea esi, [0x69c720]
mov dword [esp], esi
lea esi, [esp + 0xd0]
mov dword [esp + 4], esi
call fcn.00408750
mov ecx, dword [esp + 8]
mov dword [esp + 0xa8], ecx
lea edx, [0x67e920]
mov dword [esp], edx
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call fcn.00447740
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xa4], ecx
lea edx, [0x6987c0]
mov dword [esp], edx
call fcn.0040af90
mov ecx, dword [esp + 4]
mov dword [ecx + 0xc], 0x1000
mov dword [ecx + 0x10], 0x1000
mov edx, dword [0xa43e50]
test edx, edx
jne 0x5fd7c8
mov edx, dword [esp + 0xa4]
mov dword [ecx + 8], edx
jmp 0x5fd7d7
lea edi, [ecx + 8]
mov eax, dword [esp + 0xa4]
call fcn.0045f670
lea edx, [0x895940]
mov dword [ecx + 0x18], edx
mov edx, dword [0xa43e50]
test edx, edx
jne 0x5fd803
mov eax, dword [esp + 0xa8]
mov dword [ecx + 0x1c], eax
mov eax, dword [esp + 0x9c]
mov dword [eax + 0xc8], ecx
jmp 0x5fd826
lea edi, [ecx + 0x1c]
mov eax, dword [esp + 0xa8]
call fcn.0045f670
mov edx, dword [esp + 0x9c]
lea edi, [edx + 0xc8]
mov eax, ecx
call fcn.0045f670
lea eax, [0x686080]
mov dword [esp], eax
mov eax, dword [esp + 0x174]
mov dword [esp + 4], eax
call fcn.00408a70
mov eax, dword [esp + 8]
lea ecx, [0x89515c]
cmp eax, ecx
jne 0x5fd856
mov edx, dword [esp + 0x178]
jmp 0x5fd85b
mov edx, 0
mov dword [esp + 0xa0], eax
jne 0x5fd879
cmp dword [edx + 4], 0x1000
jl 0x5fd879
mov eax, dword [esp + 0x178]
jmp 0x5fd970
lea eax, [0x6a2320]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
mov dword [esp + 0x90], eax
lea ecx, [0x67e920]
mov dword [esp], ecx
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call fcn.00447740
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa8], eax
lea edi, [esp + 0xe4]
xor eax, eax
call fcn.0045f765
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], 0x1000
mov dword [esp + 0xec], 0x1000
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x178]
mov dword [esp + 0xf4], eax
mov dword [esp + 0x108], 0xffffffff
mov dword [esp + 0x10c], 0xffffffff
mov ecx, dword [0xa43e50]
test ecx, ecx
jne 0x5fd93e
mov edi, dword [esp + 0x90]
lea esi, [esp + 0xe4]
call fcn.0045fc12
jmp 0x5fd969
lea eax, [0x6a2320]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
lea ecx, [esp + 0xe4]
mov dword [esp + 8], ecx
call fcn.00410400
mov eax, dword [esp + 0x178]
mov edx, dword [esp + 0x90]
mov ecx, dword [0xa43e50]
test ecx, ecx
jne 0x5fd986
mov ecx, dword [esp + 0x9c]
mov dword [ecx + 0x78], edx
jmp 0x5fd997
mov ecx, dword [esp + 0x9c]
lea edi, [ecx + 0x78]
mov eax, edx
call fcn.0045f670
mov eax, dword [ecx + 0xc8]
lea ebx, [0x895170]
mov dword [esp], ebx
mov dword [esp + 4], eax
lea eax, [0x89515c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call fcn.005f5110
mov eax, dword [0xa43e50]
mov ecx, dword [esp + 0x10]
test eax, eax
jne 0x5fd9da
mov edx, dword [esp + 0x9c]
mov dword [edx + 0xcc], ecx
jmp 0x5fd9ee
mov edx, dword [esp + 0x9c]
lea edi, [edx + 0xcc]
mov eax, ecx
call fcn.0045f670
mov ebx, dword [esp + 0x170]
mov ebp, dword [ebx + 0x1c]
test ebp, ebp
jne 0x5fda00
xor eax, eax
jmp 0x5fda20
cmp ebp, 0x4000
jae 0x5fda0f
mov eax, 0x4000
jmp 0x5fda20
cmp ebp, 0xffffff
jbe 0x5fda1e
mov eax, 0xffffff
jmp 0x5fda20
mov eax, ebp
test eax, eax
je 0x5fda58
test ebp, ebp
jne 0x5fda2c
xor ebp, ebp
jmp 0x5fda48
cmp ebp, 0x4000
jae 0x5fda3b
mov ebp, 0x4000
jmp 0x5fda48
cmp ebp, 0xffffff
jbe 0x5fda48
mov ebp, 0xffffff
cmp ebp, 0xffffff
jbe 0x5fda55
mov ebp, 0xffffff
mov dword [ecx + 0x20], ebp
mov eax, dword [ebx + 0x44]
test eax, eax
je 0x5fda7e
mov ecx, dword [edx + 0xcc]
test byte [ecx], al
mov ebp, dword [0xa43e50]
test ebp, ebp
jne 0x5fda76
mov dword [ecx + 0x18], eax
jmp 0x5fda7e
lea edi, [ecx + 0x18]
call fcn.0045f670
mov eax, dword [ebx + 0x20]
test eax, eax
ja 0x5fda8a
mov eax, 0x1000
mov dword [esp + 0x70], eax
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.005e7a40
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0xcc]
test byte [ecx], al
mov edx, dword [0xa43e50]
mov ebx, dword [esp + 8]
test edx, edx
jne 0x5fdac0
mov dword [ecx + 0x5c], ebx
jmp 0x5fdace
lea edi, [ecx + 0x5c]
mov ecx, eax
mov eax, ebx
call fcn.0045f670
mov eax, ecx
mov ecx, dword [esp + 0x170]
mov edx, dword [ecx + 0x18]
test edx, edx
jne 0x5fdae3
mov edx, 0xa00000
jmp 0x5fdaea
cmp edx, 0xffffffff
jne 0x5fdaea
xor edx, edx
mov ecx, dword [eax + 0xcc]
mov dword [ecx + 0x60], edx
lea ecx, [0x895198]
mov dword [esp], ecx
lea ecx, [eax + 0xd8]
mov dword [esp + 4], ecx
call fcn.005e6410
mov eax, dword [0xa43e50]
mov ecx, dword [esp + 8]
test eax, eax
jne 0x5fdb28
mov eax, dword [esp + 0x9c]
mov dword [eax + 0xec], ecx
jmp 0x5fdb3e
mov edx, dword [esp + 0x9c]
lea edi, [edx + 0xec]
mov eax, ecx
call fcn.0045f670
mov eax, edx
mov edx, dword [esp + 0x170]
mov ebx, dword [edx + 0x24]
test ebx, ebx
ja 0x5fdb51
mov ebx, 0x1000
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.005e6f30
mov eax, dword [esp + 0x9c]
mov dword [eax + 0xb4], 0x1000
mov ecx, dword [esp + 0x170]
movzx edx, byte [ecx + 0x15]
test dl, dl
je 0x5fdb84
mov dword [eax + 0x6c], 3
lea eax, [0x686500]
mov dword [esp], eax
mov eax, dword [esp + 0x174]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x178]
mov dword [esp + 8], eax
call fcn.00408b80
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
jne 0x5fdbc0
mov ecx, dword [esp + 0x9c]
jmp 0x5fdc70
mov dword [esp + 0x98], ecx
mov dword [esp + 0x7c], eax
lea eax, [0x6a8280]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
mov dword [esp + 0xbc], eax
mov ecx, dword [esp + 0x7c]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x98]
mov dword [esp], edx
call ecx
mov eax, dword [0xa43e50]
test eax, eax
jne 0x5fdc24
mov edi, dword [esp + 0xbc]
lea esi, [esp + 4]
call fcn.0045fb9a
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0x9c]
mov dword [ecx + 0x10], eax
jmp 0x5fdc70
lea edi, [esp + 0x110]
lea esi, [esp + 4]
call fcn.0045fb9a
lea eax, [0x6a8280]
mov dword [esp], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 4], eax
lea ecx, [esp + 0x110]
mov dword [esp + 8], ecx
call fcn.00410400
mov eax, dword [esp + 0x9c]
lea edi, [eax + 0x10]
mov ecx, eax
mov eax, dword [esp + 0xbc]
call fcn.0045f670
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov word [esp + 0x80], 2
mov word [esp + 0x88], 4
mov dword [esp + 0x8c], 0x400000
mov eax, dword [esp + 0x170]
mov edx, dword [eax + 0x1c]
test edx, edx
jne 0x5fdccd
xor edx, edx
jmp 0x5fdce9
cmp edx, 0x4000
jae 0x5fdcdc
mov edx, 0x4000
jmp 0x5fdce9
cmp edx, 0xffffff
jbe 0x5fdce9
mov edx, 0xffffff
test edx, edx
jne 0x5fdd00
mov edx, 2
lea ebx, [esp + 0x80]
mov ebp, 2
jmp 0x5fdd61
mov dword [esp + 0x6c], edx
lea eax, [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], 3
mov dword [esp + 8], 2
mov dword [esp + 0xc], 1
lea eax, [0x69ca80]
mov dword [esp + 0x10], eax
call fcn.00447800
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov word [eax + 0x10], 5
mov edx, dword [esp + 0x6c]
mov dword [eax + 0x14], edx
mov edx, ecx
mov ebx, eax
mov ebp, 3
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0x9c]
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x5fdd6f
mov eax, 0xa00000
jmp 0x5fdd76
cmp eax, 0xffffffff
jne 0x5fdd76
xor eax, eax
test eax, eax
je 0x5fddcb
inc ebp
cmp edx, ebp
jae 0x5fddbc
mov dword [esp + 0x68], eax
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x69ca80]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x9c]
lea esi, [ebx + ebp*8 - 8]
mov word [esi], 6
lea esi, [ebx + ebp*8 - 4]
mov dword [esi], eax
mov eax, dword [esp + 0x70]
cmp eax, 0x1000
je 0x5fde23
inc ebp
cmp edx, ebp
jae 0x5fde14
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x69ca80]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x9c]
lea esi, [ebx + ebp*8 - 8]
mov word [esi], 1
lea esi, [ebx + ebp*8 - 4]
mov dword [esi], eax
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x94], ebx
mov eax, dword [ecx + 0xc8]
mov esi, dword [str.PRI__HTTP_2.0_r_n_r_nSM_r_n_r_n]
mov edi, dword [0xa178cc]
mov edx, dword [0xa178d0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
call fcn.005cf510
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0xcc]
mov dword [esp], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0xc], ecx
call fcn.005f66d0
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0xcc]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x40000000
call fcn.005f72c0
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0x48]
lea edx, [ecx + 0x4000ffff]
cmp edx, 0x4000ffff
setg bl
test ecx, ecx
setg cl
nop
cmp cl, bl
jne 0x5fded9
mov dword [eax + 0x48], edx
mov ecx, dword [eax + 0xc8]
mov dword [esp], ecx
call fcn.005cf3c0
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0xd0]
test ecx, ecx
jne 0x5fdf6e
lea eax, [0x686f20]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
lea ecx, [0x5fdff0]
mov dword [eax], ecx
mov ecx, dword [0xa43e50]
test ecx, ecx
jne 0x5fdf28
mov ecx, dword [esp + 0x9c]
mov dword [eax + 4], ecx
jmp 0x5fdf3b
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x9c]
call fcn.0045f670
mov eax, ecx
mov dword [esp], eax
call fcn.0043e950
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], 0
add esp, 0x16c
ret
nop
lea eax, [0x687ca0]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x3a
lea ecx, [0x6cb320]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [esp], ecx
lea edx, [0x895274]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.005febb0
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0xd0]
mov eax, dword [eax + 0xd4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
add esp, 0x16c
ret
call fcn.0045e260
jmp fcn.005fd310