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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xda0
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 0x318]
mov edi, edx
cmp ecx, 2
jne 0x63b60a
mov eax, dword [edi + 0x328]
mov dword [esp + 0xc8], 2
mov dword [esp + 0xd8], eax
mov eax, dword [0x94bccc]
test eax, eax
jne 0x63b832
jmp 0x63b6d5
mov ebx, dword [edi + 0x31c]
mov esi, dword [edi + 0x320]
lea eax, [edi + 0x310]
test ecx, ecx
je 0x63b67d
mov ecx, dword [esi + 8]
dec ecx
and ecx, 0xfffffff8
lea ecx, [ecx + ebx + 8]
push eax
push ecx
call dword [esi + 0x38]
add esp, 8
lock inc dword [ebx]
jle 0x63d091
mov dword [esp + 0xc0], eax
mov eax, dword [edi + 0x328]
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], 1
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xd0], esi
mov dword [esp + 0xd8], eax
mov eax, dword [esi + 8]
dec eax
and eax, 0xfffffff8
lea ebx, [eax + ebx + 8]
jmp 0x63b6b9
push eax
push ebx
call dword [esi + 0x38]
add esp, 8
mov ecx, dword [edi + 0x328]
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xd0], esi
mov dword [esp + 0xd8], ecx
lea eax, [esp + 0xc0]
push eax
push ebx
call dword [esi + 0x30]
add esp, 8
mov eax, dword [0x94bccc]
test eax, eax
jne 0x63b832
movzx eax, byte [0x94b17c]
test al, al
je 0x63b832
movzx eax, al
cmp eax, 1
je 0x63b70b
cmp eax, 2
je 0x63b74f
mov ecx, 0x94b174
call fcn.007d3740
test al, al
je 0x63b832
movzx eax, al
cmp eax, 2
je 0x63b74f
mov eax, dword [0x94b174]
mov ecx, dword [0x94bfb8]
cmp ecx, 2
jne 0x63b832
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
je 0x63b73f
mov esi, dword [ecx + 8]
dec esi
and esi, 0xfffffff8
lea edx, [esi + edx + 8]
push eax
push edx
call dword [ecx + 0x14]
add esp, 8
test al, al
je 0x63b832
mov eax, dword [0x94b174]
mov edx, dword [eax + 0x20]
test edx, edx
je 0x63d09d
mov esi, dword [eax + 0x1c]
movsd xmm0, qword [eax + 0x24]
lea ecx, [eax + 0x1c]
mov dword [esp + 0x70], edi
mov dword [esp + 0x418], esi
mov dword [esp + 0x41c], edx
lea edx, [esp + 0x418]
movlps qword [esp + 0x420], xmm0
mov dword [esp + 0x428], 0
mov dword [esp + 0x48], edx
lea edx, [esp + 0x70]
mov dword [esp + 0x4c], edx
lea edx, [esp + 0x48]
mov dword [esp + 0x50], 0x927170
mov dword [esp + 0x10], edx
lea edx, [esp + 0x10]
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 1
mov eax, dword [0x94bfb8]
cmp eax, 2
jne 0x63b832
cmp dword [0x94bcc0], 0
mov ebx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov esi, dword [0x94bcc8]
je 0x63b810
mov eax, dword [esi + 8]
dec eax
and eax, 0xfffffff8
lea ebx, [eax + ebx + 8]
lea eax, [esp + 0x198]
push eax
push ebx
call dword [esi + 0x28]
add esp, 8
test al, al
je 0x63b832
lea eax, [esp + 0x198]
push eax
push ebx
call dword [esi + 0x2c]
add esp, 8
lea eax, [edi + 8]
mov ebx, dword [edi]
mov esi, dword [edi + 4]
mov dword [esp + 0xa4], edi
mov dword [esp + 0x38], eax
lea eax, [edi + 0x288]
mov dword [esp + 0xc], eax
lea eax, [edi + 0xd8]
mov dword [esp + 0xa8], eax
lea eax, [edi + 0x11]
mov dword [esp + 0x94], eax
lea eax, [edi + 0x14]
mov dword [esp + 0xa0], eax
lea eax, [edi + 0x1c]
mov dword [esp + 0x90], eax
lea eax, [edi + 9]
mov dword [esp + 0x9c], eax
lea eax, [edi + 0x20]
mov dword [esp + 0x98], eax
jmp 0x63b9b6
mov dword [esp + 8], 2
mov dword [esp + 4], 0
movzx eax, byte [esp + 0x72]
movsd xmm0, qword [esp + 0x48]
mov byte [esp + 0xae], al
movzx eax, word [esp + 0x70]
movsd qword [esp + 0x10], xmm0
mov word [esp + 0xac], ax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x18], eax
push 0x260
push esi
lea edi, [esp + 0x420]
push edi
call fcn.007bd9b0
add esp, 0xc
mov edi, dword [esp + 0xa4]
mov ecx, edi
call fcn.00644280
mov esi, dword [esp]
movzx eax, byte [esp + 0x40]
mov dword [edi], ebx
mov ecx, dword [esp + 0x9c]
movsd xmm0, qword [esp + 0x10]
mov dword [edi + 4], esi
mov byte [edi + 8], al
movzx eax, byte [esp + 0xae]
mov byte [ecx + 2], al
movzx eax, word [esp + 0xac]
mov word [ecx], ax
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0xa0]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x18]
movsd qword [ecx], xmm0
mov dword [ecx + 8], eax
push 0x260
lea eax, [esp + 0x41c]
push eax
push dword [esp + 0xa0]
call fcn.007bd9b0
add esp, 0xc
mov ecx, dword [esp + 0x34]
mov dword [edi + 0x280], 0
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 8]
mov dword [edi + 0x288], ecx
mov ecx, dword [esp + 0x68]
mov dword [edi + 0x28c], eax
mov dword [edi + 0x290], edx
mov edx, dword [esp + 0x6c]
mov dword [edi + 0x294], ecx
mov ecx, dword [esp + 4]
mov dword [edi + 0x298], edx
mov dword [edi + 0x2a0], ecx
add ebx, 0xfffffffc
mov eax, 1
adc esi, 0xffffffff
cmp ebx, 3
sbb esi, 0
cmovae ebx, eax
test ebx, ebx
jne 0x63bf53
mov eax, dword [edi + 0x290]
lea esi, [esp + 0x198]
cmp eax, 2
je 0x63ba0a
test eax, eax
mov ecx, dword [edi + 0x294]
mov eax, dword [edi + 0x298]
je 0x63b9ff
mov edx, dword [eax + 8]
dec edx
and edx, 0xfffffff8
lea ecx, [edx + ecx + 8]
push dword [esp + 0xc]
push ecx
call dword [eax + 0x30]
add esp, 8
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx]
xor eax, 3
or eax, dword [ecx + 4]
je 0x63d011
mov edx, dword [esp + 0xa8]
lea ecx, [esp + 0x418]
push dword [ebp + 8]
call fcn.0064f5b0
add esp, 4
xor ecx, ecx
cmp byte [esp + 0x418], 5
mov ebx, 4
je 0x63bacf
mov eax, dword [esp + 0x418]
cmp al, 4
mov dword [esp + 0x44], eax
jne 0x63baf0
mov eax, dword [esp + 0x38]
mov ebx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [eax], 3
mov dword [eax + 4], 0
mov eax, ebx
xor eax, 3
or eax, ecx
je 0x63d02f
mov edx, esi
mov esi, ecx
movzx eax, byte [edi + 0x10]
mov ecx, dword [esp + 0x94]
mov byte [esp + 0x40], al
movzx eax, byte [ecx + 2]
mov byte [esp + 0x12], al
movzx eax, word [ecx]
mov word [esp + 0x10], ax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x44], eax
mov eax, dword [edi + 0x18]
mov dword [esp + 0x3c], eax
push 0x26c
push dword [esp + 0x94]
push edx
call fcn.007bd9b0
add esp, 0xc
mov ecx, esi
lea esi, [esp + 0x198]
mov eax, dword [edi + 0x290]
cmp eax, 2
jne 0x63bb10
mov eax, ebx
xor eax, 3
or eax, ecx
jne 0x63bb4d
jmp 0x63c024
mov eax, dword [esp + 0x41c]
mov ebx, 3
mov byte [esp + 0x40], 4
mov dword [esp + 0x3c], eax
mov eax, dword [edi + 0x290]
cmp eax, 2
je 0x63bada
mov edx, edi
mov edi, esi
mov esi, ecx
test eax, eax
mov ecx, dword [edx + 0x294]
mov eax, dword [edx + 0x298]
je 0x63bb31
mov edx, dword [eax + 8]
dec edx
and edx, 0xfffffff8
lea ecx, [edx + ecx + 8]
push dword [esp + 0xc]
push ecx
call dword [eax + 0x34]
add esp, 8
mov ecx, esi
mov esi, edi
mov eax, ebx
xor eax, 3
or eax, ecx
je 0x63c024
mov eax, ebx
xor eax, 4
or eax, ecx
je 0x63bff1
movzx eax, byte [esp + 0x12]
movsd xmm0, qword [esp + 0x198]
mov dword [esp], ecx
mov byte [esp + 0xe2], al
movzx eax, word [esp + 0x10]
movsd qword [esp + 0x70], xmm0
mov word [esp + 0xe0], ax
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x78], eax
push 0x260
lea eax, [esp + 0x1a8]
push eax
lea edi, [esp + 0xb40]
push edi
call fcn.007bd9b0
add esp, 0xc
movzx eax, word [esp + 0xe0]
movsd xmm0, qword [esp + 0x70]
mov word [esp + 0x60], ax
movzx eax, byte [esp + 0xe2]
movsd qword [esp + 0x100], xmm0
mov byte [esp + 0x62], al
mov eax, dword [esp + 0x78]
mov dword [esp + 0x108], eax
mov eax, dword [0x94bccc]
test eax, eax
je 0x63bd70
movzx eax, word [esp + 0x60]
movsd xmm0, qword [esp + 0x100]
mov word [esp + 0x70], ax
movzx eax, byte [esp + 0x62]
movsd qword [esp + 0x48], xmm0
mov byte [esp + 0x72], al
mov eax, dword [esp + 0x108]
mov dword [esp + 0x50], eax
push 0x260
push edi
push esi
call fcn.007bd9b0
add esp, 0xc
mov eax, dword [0x94bccc]
test eax, eax
jne 0x63b8a0
mov dword [esp + 4], 0
movzx eax, byte [0x94b194]
test al, al
je 0x63bef1
movzx eax, al
mov dword [esp + 8], 2
cmp eax, 1
je 0x63bc7c
cmp eax, 2
je 0x63bcc0
mov ecx, 0x94b18c
call fcn.007d3740
test al, al
je 0x63b8b0
movzx eax, al
cmp eax, 2
je 0x63bcc0
mov eax, dword [0x94b18c]
mov ecx, dword [0x94bfb8]
cmp ecx, 2
jne 0x63b8b0
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov edi, dword [0x94bcc8]
je 0x63bcb0
mov ecx, dword [edi + 8]
dec ecx
and ecx, 0xfffffff8
lea edx, [ecx + edx + 8]
push eax
push edx
call dword [edi + 0x14]
add esp, 8
test al, al
je 0x63b8b0
mov ecx, dword [0x94b18c]
mov dword [esp + 0x10], 0x93d1f8
mov dword [esp + 0x14], 0
lea eax, [ecx + 0x1c]
mov dword [esp + 0x18], eax
mov eax, dword [0x94bfb8]
mov dword [esp + 4], ecx
cmp eax, 2
jne 0x63befe
lea eax, [esp + 0x10]
mov dword [esp + 0x428], ecx
cmp dword [0x94bcc0], 0
mov edi, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov dword [esp + 0x42c], eax
mov eax, dword [0x94bcc8]
mov dword [esp + 0x41c], 0
mov dword [esp + 0x418], 1
mov dword [esp + 0x6c], eax
je 0x63bf2b
mov edx, eax
mov eax, dword [eax + 8]
lea ecx, [esp + 0x418]
dec eax
and eax, 0xfffffff8
lea eax, [eax + edi + 8]
push ecx
push eax
call dword [edx + 0x1c]
add esp, 8
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], edx
lock inc dword [edi]
jle 0x63d091
mov eax, 1
jmp 0x63bf46
movzx eax, byte [0x94b188]
test al, al
je 0x63bbed
movzx eax, al
cmp eax, 1
je 0x63bda6
cmp eax, 2
je 0x63bdf6
mov ecx, 0x94b180
call fcn.007d3740
test al, al
je 0x63bbed
movzx eax, al
cmp eax, 2
je 0x63bdf6
mov eax, dword [0x94b180]
mov ecx, dword [0x94bfb8]
cmp ecx, 2
jne 0x63bbed
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
je 0x63bde6
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 8]
dec ecx
and ecx, 0xfffffff8
lea edx, [ecx + edx + 8]
mov ecx, dword [esp + 4]
push eax
push edx
call dword [ecx + 0x14]
add esp, 8
test al, al
je 0x63bbed
mov eax, dword [0x94b180]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x63d039
mov edx, dword [eax + 0x1c]
movsd xmm0, qword [eax + 0x24]
mov dword [esp + 0xac], 0x927198
mov dword [esp + 0x418], edx
mov dword [esp + 0x41c], ecx
lea edx, [esp + 0x48]
lea ecx, [eax + 0x1c]
movlps qword [esp + 0x420], xmm0
mov dword [esp + 0x428], 0
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x418]
lea edx, [esp + 0x10]
mov dword [esp + 0x48], ecx
lea ecx, [esp + 0xac]
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 1
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], 0x8aa158
mov eax, dword [0x94bfb8]
cmp eax, 2
jne 0x63bbed
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
je 0x63bec5
mov eax, dword [ecx + 8]
dec eax
and eax, 0xfffffff8
lea edx, [eax + edx + 8]
mov dword [esp + 8], edx
push esi
push edx
mov dword [esp + 0xc], ecx
call dword [ecx + 0x28]
add esp, 8
test al, al
je 0x63bbed
push esi
push dword [esp + 0xc]
mov eax, dword [esp + 0xc]
call dword [eax + 0x2c]
add esp, 8
jmp 0x63bbed
mov dword [esp + 8], 2
jmp 0x63b8b0
mov dword [esp + 8], 0
mov dword [esp + 0x34], 0xdead
mov dword [esp + 0x68], str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set
mov dword [esp + 0x6c], 0x93b6a0
mov dword [esp + 0x30], 0
jmp 0x63b8b0
mov ecx, eax
lea eax, [esp + 0x418]
push eax
push edi
call dword [ecx + 0x1c]
add esp, 8
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], edx
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 0x68], edi
jmp 0x63b8b0
cmp ebx, 1
jne 0x63d01b
mov eax, dword [edi + 0x290]
cmp eax, 2
je 0x63bf8d
test eax, eax
mov ecx, dword [edi + 0x294]
mov eax, dword [edi + 0x298]
je 0x63bf82
mov edx, dword [eax + 8]
dec edx
and edx, 0xfffffff8
lea ecx, [edx + ecx + 8]
push dword [esp + 0xc]
push ecx
call dword [eax + 0x30]
add esp, 8
mov eax, dword [edi + 0x280]
xorps xmm0, xmm0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
movaps xmmword [esp + 0x10], xmm0
cmp eax, 0x18
jne 0x63c0ab
mov ebx, dword [edi]
mov esi, dword [edi + 4]
mov dword [edi], 3
mov dword [edi + 4], 0
mov eax, ebx
xor eax, 3
or eax, esi
je 0x63d093
lea eax, [esp + 0x1a0]
push 0x278
push dword [esp + 0x3c]
push eax
call fcn.007bd9b0
add esp, 0xc
jmp 0x63c4e9
mov eax, dword [0x94bccc]
test eax, eax
je 0x63c1a9
mov eax, dword [esp + 0x2c]
mov dword [eax + 4], 0
mov dword [eax], 4
mov eax, dword [esp + 0xc8]
cmp eax, 2
jne 0x63cdae
jmp 0x63ce49
mov ecx, dword [esp + 0x1a0]
movsd xmm0, qword [esp + 0x198]
movzx eax, byte [esp + 0x12]
mov esi, dword [esp + 0x2c]
mov ah, byte [esp + 0x40]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x44]
mov dword [esp + 0x78], ecx
movsd qword [esp + 0x70], xmm0
movzx ecx, word [esp + 0x10]
mov byte [esi + 0xb], al
mov byte [esp + 0xe2], al
mov edx, dword [esp + 0x78]
movsd xmm0, qword [esp + 0x70]
mov word [esi + 9], cx
mov word [esp + 0xe0], cx
mov dword [esi + 0x1c], edx
movsd qword [esi + 0x14], xmm0
mov dword [esi + 4], 0
mov dword [esi], 3
mov byte [esi + 8], ah
mov dword [esi + 0x10], ebx
mov dword [esi + 0xc], edi
mov eax, dword [esp + 0xc8]
cmp eax, 2
jne 0x63cdae
jmp 0x63ce49
mov ebx, 0x18
lea ecx, [edi + 0x1a0]
sub ebx, eax
mov dword [esp + 8], ecx
nop dword [eax]
cmp ebx, 0x19
jae 0x63d04d
mov ecx, dword [edi]
lea eax, [esp + 0x10]
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], ebx
xor ecx, 3
or ecx, dword [edi + 4]
je 0x63d05e
mov edx, dword [esp + 8]
lea eax, [esp + 0xac]
lea ecx, [esp + 0x418]
push eax
push dword [ebp + 8]
call fcn.00655190
add esp, 8
xor esi, esi
cmp byte [esp + 0x418], 5
je 0x63c31d
mov eax, dword [esp + 0x418]
cmp al, 4
jne 0x63c327
mov edx, dword [esp + 0xb0]
mov esi, dword [esp + 0xb4]
cmp esi, edx
ja 0x63d068
test esi, esi
je 0x63c35f
mov ecx, dword [edi + 0x280]
mov dword [esp + 4], ebx
mov ebx, ecx
add ebx, esi
jb 0x63d074
cmp ebx, 0x18
ja 0x63d080
lea eax, [ecx + str.PRI__HTTP_2.0_r_n_r_nSM_r_n_r_n8]
push esi
push dword [esp + 0xb0]
push eax
call fcn.007be090
add esp, 0xc
test eax, eax
jne 0x63c39d
mov dword [edi + 0x280], ebx
mov ebx, dword [esp + 4]
sub ebx, esi
jne 0x63c0c0
jmp 0x63bfb4
movzx eax, byte [0x94b1a0]
test al, al
je 0x63bffe
movzx eax, al
cmp eax, 1
je 0x63c1df
cmp eax, 2
je 0x63c223
mov ecx, 0x94b198
call fcn.007d3740
test al, al
je 0x63bffe
movzx eax, al
cmp eax, 2
je 0x63c223
mov eax, dword [0x94b198]
mov ecx, dword [0x94bfb8]
cmp ecx, 2
jne 0x63bffe
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
je 0x63c213
mov esi, dword [ecx + 8]
dec esi
and esi, 0xfffffff8
lea edx, [esi + edx + 8]
push eax
push edx
call dword [ecx + 0x14]
add esp, 8
test al, al
je 0x63bffe
mov eax, dword [0x94b198]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x63d0d4
mov edx, dword [eax + 0x1c]
movsd xmm0, qword [eax + 0x24]
lea esi, [esp + 0xac]
mov dword [esp + 0xac], 0x9271b8
mov dword [esp + 0x418], edx
lea edx, [esp + 0x418]
mov dword [esp + 0x41c], ecx
movlps qword [esp + 0x420], xmm0
mov dword [esp + 0x428], 0
mov dword [esp + 0x48], edx
lea edx, [esp + 0x48]
mov dword [esp + 0x4c], esi
lea esi, [eax + 0x1c]
mov dword [esp + 0x50], 0x8aa158
mov dword [esp + 0x10], edx
lea edx, [esp + 0x10]
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], esi
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 1
mov eax, dword [0x94bfb8]
cmp eax, 2
jne 0x63bffe
cmp dword [0x94bcc0], 0
mov edi, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov esi, dword [0x94bcc8]
je 0x63c2f2
mov eax, dword [esi + 8]
dec eax
and eax, 0xfffffff8
lea edi, [eax + edi + 8]
lea eax, [esp + 0x198]
push eax
push edi
call dword [esi + 0x28]
add esp, 8
test al, al
je 0x63bffe
lea eax, [esp + 0x198]
push eax
push edi
call dword [esi + 0x2c]
add esp, 8
jmp 0x63bffe
mov ebx, 4
jmp 0x63c4e9
mov ecx, dword [esp + 0x41c]
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 3
mov byte [esp + 0x1a0], 4
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
jmp 0x63c4e4
lea ecx, [esp + 0x1a4]
mov edx, 0x25
push 0x28
push str.connection_closed_before_reading_preface
call fcn.005b9230
add esp, 8
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 3
mov byte [esp + 0x1a0], 4
jmp 0x63c4e2
mov eax, dword [0x94bccc]
cmp eax, 1
ja 0x63c4a1
movzx eax, byte [0x94b1b8]
test al, al
je 0x63c4a1
movzx ecx, al
cmp ecx, 1
je 0x63c3cd
cmp ecx, 2
jne 0x63cffa
mov al, 2
mov ecx, dword [0x94b1b0]
movzx edx, al
call fcn.007580e0
test al, al
je 0x63c4a1
mov ecx, dword [0x94b1b0]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x63d110
mov esi, dword [ecx + 0x1c]
movsd xmm0, qword [ecx + 0x24]
mov dword [esp + 0x418], 0x927440
mov dword [esp + 0x41c], 1
mov dword [esp + 0x428], 0
lea eax, [ecx + 0x1c]
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edx
lea edx, [esp + 0xbc]
movlps qword [esp + 0x78], xmm0
mov dword [esp + 0x80], 0
mov dword [esp + 0x420], edx
lea edx, [esp + 0x70]
mov dword [esp + 0x424], 0
mov dword [esp + 0x10c], edx
lea edx, [esp + 0x418]
mov dword [esp + 0x110], edx
lea edx, [esp + 0x10c]
mov dword [esp + 0x114], 0x8a682c
mov dword [esp + 0xe0], edx
lea edx, [esp + 0xe0]
mov dword [esp + 0xe4], 1
mov dword [esp + 0xe8], eax
call fcn.007587f0
mov word [esp + 0x1a0], 0x101
mov dword [esp + 0x1a4], 1
mov dword [esp + 0x1a8], 0x8aa020
mov dword [esp + 0x1ac], 0x93d1f8
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 0
xor esi, esi
mov ebx, 3
mov eax, dword [edi + 0x290]
cmp eax, 2
je 0x63c51a
test eax, eax
mov ecx, dword [edi + 0x294]
mov eax, dword [edi + 0x298]
je 0x63c50f
mov edx, dword [eax + 8]
dec edx
and edx, 0xfffffff8
lea ecx, [edx + ecx + 8]
push dword [esp + 0xc]
push ecx
call dword [eax + 0x34]
add esp, 8
mov eax, ebx
and al, 7
cmp al, 3
je 0x63c539
mov eax, ebx
and eax, 7
cmp eax, 4
jne 0x63c59a
mov edx, dword [esp + 0x2c]
xor eax, eax
mov ecx, 4
jmp 0x63c580
movsd xmm0, qword [esp + 0x1b0]
movsd xmm1, qword [esp + 0x1a0]
mov edx, dword [esp + 0x2c]
movsd xmm2, qword [esp + 0x1a8]
xor eax, eax
mov ecx, 3
movsd qword [esp + 0x58], xmm0
movsd qword [esp + 0x50], xmm2
movsd qword [esp + 0x48], xmm1
movsd qword [edx + 0x18], xmm0
movsd qword [edx + 0x10], xmm2
movsd qword [edx + 8], xmm1
mov dword [edx], ecx
mov dword [edx + 4], eax
mov eax, dword [esp + 0xc8]
cmp eax, 2
jne 0x63cdae
jmp 0x63ce49
movsd xmm0, qword [esp + 0x1b0]
movsd xmm2, qword [esp + 0x1a0]
movsd xmm1, qword [esp + 0x1a8]
lea eax, [esp + 0x1b8]
mov dword [esp + 0x44], ebx
lea ecx, [esp + 0x678]
movsd qword [esp + 0x58], xmm0
movsd qword [esp + 0x50], xmm1
movsd qword [esp + 0x48], xmm2
push 0x260
push eax
push ecx
call fcn.007bd9b0
add esp, 0xc
movsd xmm1, qword [esp + 0x50]
movsd xmm0, qword [esp + 0x48]
mov ecx, edi
movsd qword [esp + 0x138], xmm1
movsd xmm1, qword [esp + 0x58]
movsd qword [esp + 0x130], xmm0
movsd qword [esp + 0x140], xmm1
call fcn.00644280
mov dword [edi + 4], 0
mov dword [edi], 6
mov eax, dword [edi + 0x2d0]
mov ecx, dword [edi + 0x2e0]
mov edx, dword [edi + 0x2e4]
movsd xmm0, qword [edi + 0x304]
test eax, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], edx
sete al
test ecx, ecx
mov ecx, 0xffff
cmovne ecx, edx
mov edx, dword [edi + 0x2fc]
mov dword [esp + 0x1b8], ecx
mov ecx, dword [edi + 0x30c]
mov dword [esp + 0x1bc], 0
mov dword [esp + 0xa8], edx
mov dword [esp + 0x1c0], ecx
mov ecx, dword [edi + 0x2d4]
mov dword [esp + 0x1c4], 2
test ecx, ecx
mov dword [esp + 0x6c], ecx
setne cl
or cl, al
mov eax, dword [edi + 0x2f8]
mov byte [esp + 0x1d4], cl
lea ecx, [esp + 0x198]
test eax, eax
mov dword [esp + 0xc], eax
setne al
test edx, edx
setne dl
and dl, al
mov eax, dword [edi + 0x2bc]
mov byte [esp + 0x1d5], dl
mov dword [esp + 0x1ac], eax
mov eax, dword [edi + 0x2b8]
mov dword [esp + 0x1a8], eax
mov eax, dword [edi + 0x2c0]
mov dword [esp + 0x1b0], eax
mov eax, dword [edi + 0x2d8]
movsd qword [esp + 0x1c8], xmm0
mov dword [esp + 0x1d0], 0xffff
movsd xmm0, qword [edi + 0x2b0]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x198], eax
mov eax, dword [edi + 0x2dc]
mov dword [esp + 0x19c], eax
mov dword [esp + 0xa0], eax
movzx eax, byte [edi + 0x300]
movsd qword [esp + 0x1a0], xmm0
mov byte [esp + 0x34], al
mov eax, dword [edi + 0x2c8]
mov dword [esp + 0x90], eax
mov eax, dword [edi + 0x2cc]
mov dword [esp + 0x94], eax
mov eax, dword [edi + 0x2e8]
mov dword [esp + 0x98], eax
mov eax, dword [edi + 0x2ec]
mov dword [esp + 0x9c], eax
mov eax, dword [edi + 0x2f0]
mov dword [esp + 0x68], eax
mov eax, dword [edi + 0x2f4]
mov dword [esp + 0x30], eax
call fcn.00494660
mov dword [esp + 4], eax
xor ecx, ecx
mov edx, 0x24
movzx eax, byte [0x94bfc5]
mov dword [esp + 8], 0
call fcn.0071ee80
test eax, eax
je 0x63d0b1
mov dword [eax], 1
mov dword [eax + 4], 1
mov dword [eax + 8], 0
mov byte [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 8
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], 0
mov ebx, eax
mov eax, dword [0x94bccc]
cmp eax, 1
ja 0x63c9ba
movzx eax, byte [0x94aae0]
test al, al
je 0x63c9ba
movzx eax, al
cmp eax, 1
je 0x63c84c
cmp eax, 2
je 0x63c8a0
mov ecx, 0x94aad8
mov dword [esp], 2
call fcn.007d3740
test al, al
je 0x63cfcc
movzx eax, al
cmp eax, 2
je 0x63c8a0
mov dword [esp], 2
mov eax, dword [0x94aad8]
mov ecx, dword [0x94bfb8]
cmp ecx, 2
jne 0x63cfcc
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
je 0x63c890
mov dword [esp], ecx
mov ecx, dword [esp]
mov ecx, dword [ecx + 8]
dec ecx
and ecx, 0xfffffff8
lea edx, [ecx + edx + 8]
mov ecx, dword [esp]
push eax
push edx
call dword [ecx + 0x14]
add esp, 8
test al, al
je 0x63c9ba
mov edx, dword [0x94aad8]
mov eax, dword [edx + 0x20]
test eax, eax
je 0x63d0e8
mov ecx, dword [edx + 0x1c]
movsd xmm0, qword [edx + 0x24]
mov dword [esp + 0x70], 0x8aa150
mov dword [esp + 0x418], ecx
mov dword [esp + 0x41c], eax
lea eax, [esp + 0x418]
movlps qword [esp + 0x420], xmm0
mov dword [esp + 0x428], 0
mov dword [esp + 0x10], eax
lea eax, [esp + 0x70]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x10]
mov dword [esp + 0x18], 0x8aa158
mov dword [esp + 0x48], eax
lea eax, [edx + 0x1c]
mov dword [esp + 0x4c], 1
mov dword [esp + 0x50], eax
mov eax, dword [0x94bfb8]
mov dword [esp + 8], edx
cmp eax, 2
jne 0x63cf94
mov dword [esp + 0x1a8], edx
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
cmp dword [0x94bcc0], 0
lea eax, [esp + 0x48]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 1
mov dword [esp + 0x8c], edx
mov dword [esp + 0xf4], ecx
je 0x63cfd1
mov eax, dword [ecx + 8]
dec eax
and eax, 0xfffffff8
lea eax, [eax + edx + 8]
mov dword [esp], eax
mov eax, ecx
lea ecx, [esp + 0x198]
push ecx
push dword [esp + 4]
call dword [eax + 0x1c]
add esp, 8
mov ecx, dword [esp + 0x8c]
lock inc dword [ecx]
jle 0x63d091
mov dword [esp + 0x88], edx
mov dword [esp], 1
jmp 0x63cfee
mov dword [esp], 2
movsd xmm1, qword [esp + 0x420]
mov ecx, dword [esp + 0x13]
movsd xmm2, qword [esp + 0x198]
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 0x418]
movsd qword [esp + 0x120], xmm1
movsd xmm1, qword [esp + 0x1a0]
mov dword [esp + 0xfb], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0x428]
movsd qword [esp + 0x148], xmm2
movsd xmm2, qword [esp + 0x1b0]
movsd qword [esp + 0x118], xmm0
lea ecx, [esp + 0x8d8]
movsd qword [esp + 0x150], xmm1
movsd xmm1, qword [esp + 0x1a8]
mov dword [esp + 0x128], eax
movzx eax, word [esp + 0x48]
movsd qword [esp + 0x160], xmm2
movsd xmm2, qword [esp + 0x1c0]
movsd qword [esp + 0x158], xmm1
movsd xmm1, qword [esp + 0x1b8]
mov word [esp + 0x64], ax
movzx eax, byte [esp + 0x4a]
movsd qword [esp + 0x170], xmm2
movsd xmm2, qword [esp + 0x130]
movsd qword [esp + 0x168], xmm1
movsd xmm1, qword [esp + 0x1c8]
mov byte [esp + 0x66], al
movsd qword [esp + 0x180], xmm2
movsd qword [esp + 0x178], xmm1
movsd xmm1, qword [esp + 0x138]
movsd qword [esp + 0x188], xmm1
movsd xmm1, qword [esp + 0x140]
movsd qword [esp + 0x190], xmm1
push 0x260
lea eax, [esp + 0x67c]
push eax
push ecx
call fcn.007bd9b0
add esp, 0xc
mov eax, dword [0x94bccc]
test eax, eax
je 0x63ce51
cmp dword [edi + 0x2a8], 0
je 0x63cb1a
mov edx, dword [edi + 0x2ac]
test edx, edx
js 0x63d0c0
mov ecx, dword [esp + 4]
call fcn.00642b70
mov edi, dword [esp + 0x2c]
movsd xmm0, qword [esp + 0x190]
movsd xmm2, qword [esp + 0x180]
movsd xmm1, qword [esp + 0x188]
movsd qword [edi + 0x18], xmm0
movsd qword [edi + 0x10], xmm1
movsd qword [edi + 8], xmm2
lea eax, [edi + 0x20]
push 0x260
lea ecx, [esp + 0x8dc]
push ecx
push eax
call fcn.007bd9b0
add esp, 0xc
mov eax, dword [esp + 0x128]
movsd xmm0, qword [esp + 0x118]
movsd xmm1, qword [esp + 0x120]
movsd xmm2, qword [esp + 0x160]
mov edx, dword [esp + 4]
movzx ecx, byte [esp + 0x34]
mov dword [edi + 0x2a0], eax
mov eax, dword [esp + 0xf0]
movsd qword [edi + 0x298], xmm1
movsd qword [edi + 0x290], xmm0
movsd xmm1, qword [esp + 0x150]
movsd xmm0, qword [esp + 0x148]
mov dword [edi + 0x2a8], eax
mov eax, dword [esp + 0x88]
mov dword [edi + 0x2ac], eax
mov eax, dword [esp]
mov dword [edi + 0x2b0], eax
mov eax, dword [esp + 0x8c]
mov dword [edi + 0x2b4], eax
mov eax, dword [esp + 0xf4]
mov dword [edi + 0x2b8], eax
mov eax, dword [esp + 8]
mov dword [edi + 0x2c0], eax
mov eax, dword [esp + 0xfb]
mov dword [edi + 0x2e4], eax
mov eax, dword [esp + 0xf8]
mov dword [edi + 0x2e1], eax
movzx eax, word [esp + 0x64]
mov word [edi + 0x345], ax
movzx eax, byte [esp + 0x66]
mov byte [edi + 0x347], al
movsd qword [edi + 0x354], xmm1
movsd xmm1, qword [esp + 0x158]
movsd qword [edi + 0x364], xmm2
movsd xmm2, qword [esp + 0x170]
mov eax, dword [esp + 0x44]
movsd qword [edi + 0x34c], xmm0
movsd qword [edi + 0x35c], xmm1
movsd xmm1, qword [esp + 0x168]
movsd qword [edi + 0x374], xmm2
movsd qword [edi + 0x36c], xmm1
movsd xmm1, qword [esp + 0x178]
movsd qword [edi + 0x37c], xmm1
mov dword [edi + 4], esi
mov dword [edi], eax
mov dword [edi + 0x280], 0
mov dword [edi + 0x28c], 0
mov word [edi + 0x2a4], 0
mov dword [edi + 0x2c8], 0
mov byte [edi + 0x2cc], 0
mov byte [edi + 0x2d5], 2
mov byte [edi + 0x2e0], 0
mov dword [edi + 0x2e8], edx
mov esi, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov dword [edi + 0x2ec], ebx
mov dword [edi + 0x2f0], 0
mov dword [edi + 0x308], 1
mov dword [edi + 0x30c], esi
mov dword [edi + 0x310], edx
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x6c]
mov dword [edi + 0x314], esi
mov dword [edi + 0x318], edx
mov esi, dword [esp + 0xa4]
mov edx, dword [esp + 0xa0]
mov dword [edi + 0x31c], esi
mov dword [edi + 0x320], edx
mov esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov dword [edi + 0x324], esi
mov dword [edi + 0x328], edx
mov esi, dword [esp + 0x98]
mov edx, dword [esp + 0x9c]
mov dword [edi + 0x32c], esi
mov dword [edi + 0x330], edx
mov esi, dword [esp + 0x68]
mov edx, dword [esp + 0x30]
mov dword [edi + 0x334], esi
mov dword [edi + 0x338], edx
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0xa8]
mov dword [edi + 0x33c], esi
mov dword [edi + 0x340], edx
mov byte [edi + 0x344], cl
mov dword [edi + 0x348], 2
mov eax, dword [esp + 0xc8]
cmp eax, 2
je 0x63ce49
test eax, eax
mov ecx, dword [esp + 0xcc]
mov eax, dword [esp + 0xd0]
je 0x63cdcb
mov edx, dword [eax + 8]
dec edx
and edx, 0xfffffff8
lea ecx, [edx + ecx + 8]
lea edx, [esp + 0xc0]
push edx
push ecx
call dword [eax + 0x34]
add esp, 8
mov edx, dword [esp + 0xc8]
cmp edx, 2
je 0x63ce49
test edx, edx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
mov esi, dword [esp + 0xcc]
mov edx, dword [esp + 0xd0]
je 0x63ce11
mov edi, dword [edx + 8]
dec edi
and edi, 0xfffffff8
lea esi, [edi + esi + 8]
push ecx
push eax
push esi
call dword [edx + 0x40]
add esp, 0xc
mov eax, dword [esp + 0xc8]
cmp eax, 2
je 0x63ce49
test eax, eax
je 0x63ce49
mov eax, dword [esp + 0xcc]
lock dec dword [eax]
jne 0x63ce49
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd0]
call fcn.0075aba0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movzx eax, byte [0x94b1ac]
test al, al
je 0x63cafa
movzx eax, al
cmp eax, 1
je 0x63ce87
cmp eax, 2
je 0x63cee0
mov ecx, 0x94b1a4
call fcn.007d3740
test al, al
je 0x63cafa
movzx eax, al
cmp eax, 2
je 0x63cee0
mov eax, dword [0x94b1a4]
mov ecx, dword [0x94bfb8]
cmp ecx, 2
jne 0x63cafa
cmp dword [0x94bcc0], 0
mov edx, dword [str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set]
mov ecx, dword [0x94bcc8]
je 0x63ced0
mov dword [esp + 0xec], ecx
mov ecx, dword [esp + 0xec]
mov ecx, dword [ecx + 8]
dec ecx
and ecx, 0xfffffff8
lea edx, [ecx + edx + 8]
mov ecx, dword [esp + 0xec]
push eax
push edx
call dword [ecx + 0x14]
add esp, 8
test al, al
je 0x63cafa
mov ecx, dword [0x94b1a4]
mov eax, dword [ecx + 0x20]
test eax, eax
je 0x63d0fc
mov edx, dword [ecx + 0x1c]
movsd xmm0, qword [ecx + 0x24]
mov dword [esp + str.connection_established_], 0x9271e8
mov dword [esp + 0x19c], 1
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x1a0], 0x93d1f8
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x418], edx
mov dword [esp + 0x41c], eax
lea eax, [esp + 0x418]
lea edx, [ecx + 0x1c]
movlps qword [esp + 0x420], xmm0
mov dword [esp + 0x428], 0
mov dword [esp + 0x48], eax
lea eax, [esp + 0x198]
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x48]
mov dword [esp + 0x50], 0x8a682c
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], edx
lea edx, [esp + 0x10]
call fcn.007587f0
jmp 0x63cafa
mov dword [esp + 0x88], 0
mov dword [esp + 0xf0], 0xdead
mov dword [esp + 0xf4], 0x93b6a0
mov dword [esp + 0x8c], str.SetGlobalDefaultErrora_global_default_trace_dispatcher_has_already_been_set
mov dword [esp], 0
jmp 0x63c9c1
jmp 0x63c9c1
lea eax, [esp + 0x198]
push eax
push edx
call dword [ecx + 0x1c]
add esp, 8
mov dword [esp + 0x88], edx
mov dword [esp], 0
mov dword [esp + 0xf0], eax
jmp 0x63c9c1
mov ecx, 0x94b1b0
call fcn.007d3740
test al, al
jne 0x63c3cd
jmp 0x63c4a1
mov ecx, 0x926ea8
call fcn.007c1fe0
mov ecx, str.Handshaking::poll___called_again_after_handshaking_was_complete
mov edx, 0x3f
push 0x927230
call fcn.007ccbe0
mov ecx, 0x926eb8
call fcn.007c1fe0
mov ecx, 0x8a6758
mov edx, 0x22
push 0x927180
call fcn.007c2000
mov ecx, ebx
mov edx, 0x18
push 0x9273a4
call fcn.007c1c40
mov ecx, 0x8aba60
call fcn.007c1fe0
mov ecx, esi
push 0x8a6e9c
call fcn.007c1c40
mov edx, ebx
push 0x9273dc
call fcn.007c1e60
mov ecx, ebx
mov edx, 0x18
push 0x9273dc
call fcn.007c1c40
ud2
mov ecx, 0x927394
call fcn.007c1fe0
mov ecx, 0x8a6758
mov edx, 0x22
push 0x927160
call fcn.007c2000
mov ecx, 4
mov edx, 0x24
call fcn.007c1490
mov ecx, str.assertion_failed:_size___proto::MAX_WINDOW_SIZE
mov edx, 0x30
push 0x8aba50
call fcn.007c1ca0
mov ecx, 0x8a6758
mov edx, 0x22
push 0x9271a0
call fcn.007c2000
mov ecx, 0x8a6758
mov edx, 0x22
push 0x8aa138
call fcn.007c2000
mov ecx, 0x8a6758
mov edx, 0x22
push 0x9271c0
call fcn.007c2000
mov ecx, 0x8a6758
mov edx, 0x22
push 0x9273ec
call fcn.007c2000
int3