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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x138
mov esi, esp
mov dword [esi + 0x120], ebp
mov dword [esi + 0x124], esp
mov dword [esi + 0x130], 0xffffffff
mov dword [esi + 0x12c], 0x1005c000
lea eax, [esi + 0x128]
mov ecx, dword fs:[0]
mov dword [esi + 0x128], ecx
mov dword fs:[0], eax
mov eax, dword [0x1027132c]
mov eax, dword [eax]
test eax, eax
je 0x100572e5
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x9c]
movzx ecx, byte [edx + 0xa2]
mov dword [esi + 0x1b], eax
mov eax, dword [edx + 0x99]
mov dword [esi + 0x18], eax
lea eax, [edx + 0x80]
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], eax
movzx eax, byte [edx + 0xa0]
mov byte [esi + 0x1f], al
mov byte [esi + 0x20], cl
lea ecx, [esi + 0x10]
lea eax, [edx + 0xa8]
lea edx, [esi + 0x70]
push ecx
push dword [ebp + 0x10]
push eax
push edx
call fcn.100e0d50
add esp, 0x10
mov edi, dword [esi + 0x70]
mov ebx, dword [esi + 0x74]
mov eax, edi
xor eax, 4
or eax, ebx
jne 0x100571fc
mov eax, dword [ebp + 8]
mov dword [eax + 4], 0
mov dword [eax], 5
jmp 0x10057abd
mov ecx, dword [esi + 0x78]
mov eax, edi
xor eax, 3
or eax, ebx
mov dword [esi + 8], ecx
jne 0x100573b3
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x5c], ecx
mov byte [esi + 7], 1
mov dword [esi + 0x130], 0
movzx ecx, byte [eax + 0xa4]
mov byte [esi + 0x3c], cl
push eax
call fcn.100f6580
add esp, 4
mov eax, dword [ebp + 0xc]
lea ebx, [eax + 0xe8]
mov eax, dword [eax + 0xec]
test eax, eax
je 0x100575ec
mov edx, dword [ebx]
xor ecx, ecx
jmp 0x10057269
inc ecx
cmp eax, ecx
je 0x100575c1
movzx edi, byte [edx + ecx]
cmp edi, 0xd
je 0x10057260
cmp edi, 0xa
je 0x10057260
cmp eax, ecx
mov dword [esi + 0x50], ecx
mov dword [esi + 0x130], 0
jae 0x100575cd
mov dword [esi + 0x40], eax
lea eax, [esi + 0x50]
mov dword [esi + 0x10], 0x101e03b0
mov dword [esi + 0x14], 2
mov dword [esi + 0x20], 0
mov byte [esi + 7], 1
mov dword [esi + 0x28], eax
lea eax, [esi + 0x40]
mov dword [esi + 0x2c], 0x10001000
mov dword [esi + 0x30], eax
lea eax, [esi + 0x28]
mov dword [esi + 0x34], 0x10001000
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], 2
push 0x101e0494
lea eax, [esi + 0x10]
push eax
call fcn.101cc530
add esp, 8
jmp 0x10057b41
mov edi, dword [0x1026fe28]
movzx eax, byte [edi + 8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jae 0x100575a3
movzx eax, al
push eax
push dword [edi]
call fcn.101498b0
add esp, 8
test al, al
je 0x10057189
mov eax, dword [edi]
cmp dword [eax + 0x20], 0
je 0x10057ad2
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x10057ad2
lea edi, [eax + 0x20]
mov dword [esi + 0xc8], edx
lea ebx, [esi + 0x70]
movq xmm0, qword [edi]
movq qword [esi + 0xcc], xmm0
mov edx, dword [edi + 8]
lea edi, [esi + 0xc8]
mov dword [esi + 0x70], 0x101d7e84
mov dword [esi + 0x74], 1
mov dword [esi + 0x80], 0
mov dword [esi + 0x78], 4
mov dword [esi + 0x7c], 0
mov dword [esi + 0x28], edi
lea edi, [esi + 0x28]
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x30], 0x101d7b24
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 1
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x10]
mov dword [esi + 0xd4], edx
mov dword [esi + 0xd8], 0
push ecx
push eax
call fcn.1014a4e0
add esp, 8
jmp 0x10057189
lea eax, [esi + 0x7c]
lea ecx, [esi + 0xd4]
push 0x4c
push eax
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 8]
mov dword [esi + 0xcc], ebx
mov dword [esi + 0xc8], edi
mov dword [esi + 0xd0], eax
mov eax, dword [0x1027132c]
mov eax, dword [eax]
cmp eax, 2
jae 0x100574eb
mov edi, dword [0x1026fe24]
movzx eax, byte [edi + 8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x1005742b
test ecx, ecx
je 0x100574eb
mov dword [esi + 0x130], 2
push edi
call fcn.101c9b80
add esp, 4
mov edi, dword [0x1026fe24]
test al, al
je 0x100574eb
mov ecx, dword [edi]
movzx eax, al
mov dword [esi + 0x130], 2
push eax
push ecx
call fcn.101498b0
add esp, 8
test al, al
mov eax, dword [0x1026fe24]
je 0x100574eb
mov eax, dword [eax]
cmp dword [eax + 0x20], 0
je 0x10057ae3
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x10057ae3
mov dword [esi + 0x10], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x110]
lea ebx, [esi + 0x50]
movq xmm0, qword [edx]
movq qword [esi + 0x14], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x50], edi
lea edi, [esi + 0x40]
mov dword [esi + 0x70], 0x101d7eb0
mov dword [esi + 0x74], 1
mov dword [esi + 0x80], 0
mov dword [esi + 0x78], ebx
mov dword [esi + 0x54], 0x100f82c0
mov dword [esi + 0x7c], 1
mov dword [esi + 0x28], edi
mov dword [esi + 0x2c], 1
mov dword [esi + 0x30], ecx
lea ecx, [esi + 0x10]
mov dword [esi + 0x40], ecx
lea ecx, [esi + 0x70]
mov dword [esi + 0x44], ecx
lea ecx, [esi + 0x28]
mov dword [esi + 0x48], 0x101d7b24
mov dword [esi + 0x1c], edx
mov dword [esi + 0x20], 0
push ecx
push eax
call fcn.1014a4e0
add esp, 8
mov ecx, dword [ebp + 0xc]
mov byte [ecx + 0xa2], 0
lea eax, [ecx + 0xa4]
cmp byte [ecx + 0xa4], 2
je 0x10057511
mov byte [eax], 1
mov dword [esi + 0x130], 2
movzx ecx, byte [esi + 0x119]
mov dword [esi + 0x130], 2
push ecx
push eax
call fcn.100f6330
add esp, 8
movzx eax, byte [esi + 0x11a]
mov edi, dword [esi + 0x110]
mov ebx, dword [esi + 0x114]
mov ecx, dword [ebp + 0xc]
add al, al
mov byte [esi + 8], al
mov eax, edi
or eax, ebx
movzx eax, byte [esi + 0x10e]
mov byte [ecx + 0xa5], al
movzx eax, byte [esi + 0x118]
je 0x100578fc
test al, al
mov dword [esi + 0xc], edi
mov dword [esi + 0x3c], ebx
je 0x10057a20
mov ecx, edi
mov edx, ebx
xor eax, eax
xor ecx, 0xfffffffe
not edx
or edx, ecx
je 0x10057a45
mov eax, edi
mov ecx, 0
mov edx, edi
and eax, ebx
cmp eax, 0xffffffff
mov eax, ebx
jne 0x10057a49
mov cl, 2
jmp 0x10057a49
test ecx, ecx
je 0x10057189
push edi
call fcn.101c9b80
add esp, 4
test al, al
jne 0x100572fe
jmp 0x10057189
mov dword [esi + 0x130], 0
mov ecx, eax
mov byte [esi + 7], 1
push ecx
mov dword [esi + 0xc], ebx
push ebx
call fcn.10185c20
add esp, 8
mov eax, dword [ebp + 0xc]
mov ebx, dword [esi + 0xc]
mov ecx, dword [eax + 0xec]
jmp 0x100575ee
xor ecx, ecx
mov eax, dword [esi + 8]
cmp byte [eax + 0x18], 0
mov eax, dword [0x1027132c]
mov eax, dword [eax]
je 0x10057739
test ecx, ecx
jne 0x10057739
cmp byte [esi + 0x3c], 0
jne 0x10057739
cmp eax, 2
jae 0x10057701
mov edi, dword [0x1026fe18]
movzx eax, byte [edi + 8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x10057655
test ecx, ecx
je 0x10057701
mov byte [esi + 7], 1
push edi
call fcn.101c9b80
add esp, 4
mov edi, dword [0x1026fe18]
test al, al
je 0x10057701
mov ecx, dword [edi]
movzx eax, al
mov byte [esi + 7], 1
push eax
push ecx
call fcn.101498b0
add esp, 8
test al, al
mov eax, dword [0x1026fe18]
je 0x10057701
mov eax, dword [eax]
cmp dword [eax + 0x20], 0
je 0x10057b13
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x10057b13
mov dword [esi + 0x28], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x28]
lea ebx, [esi + 0x10]
movq xmm0, qword [edx]
movq qword [esi + 0x2c], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x50], edi
lea edi, [esi + 0x50]
mov dword [esi + 0x54], ebx
mov dword [esi + 0x10], 0x101d7f14
mov dword [esi + 0x14], 1
mov dword [esi + 0x20], 0
mov dword [esi + 0x18], 4
mov dword [esi + 0x1c], 0
mov dword [esi + 0x58], 0x101d7b24
mov byte [esi + 7], 1
mov dword [esi + 0x40], edi
mov dword [esi + 0x44], 1
mov dword [esi + 0x48], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0x34], edx
mov dword [esi + 0x38], 0
push ecx
push eax
call fcn.1014a4e0
add esp, 8
mov byte [esi + 7], 1
push dword [ebp + 0xc]
call fcn.100f66a0
add esp, 4
mov edi, dword [ebp + 8]
mov ecx, dword [esi + 8]
mov dword [esi + 0x130], 0xffffffff
mov dword [edi + 4], 0
mov dword [edi], 4
call fcn.1003fcf0
mov eax, edi
jmp 0x10057abd
cmp eax, 2
jae 0x1005785d
mov edi, dword [0x1026fe1c]
movzx eax, byte [edi + 8]
mov dword [esi + 0xc], ebx
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x10057780
test ecx, ecx
je 0x1005785d
mov byte [esi + 7], 1
push edi
call fcn.101c9b80
add esp, 4
mov ebx, dword [esi + 0xc]
mov edi, dword [0x1026fe1c]
test al, al
je 0x1005785d
mov ecx, dword [edi]
movzx eax, al
mov byte [esi + 7], 1
push eax
push ecx
call fcn.101498b0
add esp, 8
mov ebx, dword [esi + 0xc]
test al, al
je 0x1005785d
mov eax, dword [0x1026fe1c]
mov eax, dword [eax]
cmp dword [eax + 0x20], 0
je 0x10057af9
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x10057af9
mov dword [esi + 0x28], edx
lea edx, [eax + 0x20]
lea ebx, [esi + 0x5c]
lea edi, [esi + 0x60]
movq xmm0, qword [edx]
movq qword [esi + 0x2c], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x40], ebx
mov dword [esi + 0x44], 0x100f5bf0
mov dword [esi + 0x48], edi
lea edi, [esi + 0x28]
lea ebx, [esi + 0x40]
mov dword [esi + 0x10], 0x101d7f48
mov dword [esi + 0x14], 3
mov dword [esi + 0x20], 0
mov dword [esi + 0x4c], fcn.101bf6a0
mov byte [esi + 7], 1
mov dword [esi + 0x64], edi
lea edi, [esi + 0x64]
mov dword [esi + 0x18], ebx
lea ebx, [esi + 0x10]
mov dword [esi + 0x1c], 2
mov dword [esi + 0x50], edi
mov dword [esi + 0x54], 1
mov dword [esi + 0x58], ecx
lea ecx, [esi + 0x50]
mov dword [esi + 0x68], ebx
mov dword [esi + 0x6c], 0x101d7b24
mov dword [esi + 0x34], edx
mov edx, dword [ebp + 0xc]
mov dword [esi + 0x38], 0
mov edx, dword [edx + 0xec]
mov dword [esi + 0x60], edx
push ecx
push eax
call fcn.1014a4e0
add esp, 8
mov eax, dword [esi + 0x5c]
mov ebx, dword [esi + 0xc]
mov dword [esi + 8], eax
mov ecx, dword [ebp + 0xc]
mov edi, 3
mov eax, dword [ecx + 0x60]
mov ecx, dword [ecx + 0x64]
add eax, 0xfffffffe
adc ecx, 0xffffffff
xor edx, edx
cmp edi, eax
sbb edx, ecx
jb 0x100578e1
test eax, eax
jne 0x100578e1
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0xec], 0x18
jb 0x100578e1
mov eax, dword [ebx]
movdqu xmm0, xmmword [eax]
movdqu xmm1, xmmword [eax + 8]
pcmpeqb xmm1, xmmword [str.TP_2.0_r_n_r_nSM_r_n_r_nPRI__HTTP_2.0_r_n]
pcmpeqb xmm0, xmmword [0x101d74b0]
pand xmm0, xmm1
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x100578e1
mov dword [esi + 0x130], 1
call fcn.100f50d0
mov dword [esi + 0xc], eax
mov ecx, dword [esi + 8]
mov byte [esi + 7], 0
mov dword [esi + 0x130], 0
call fcn.1003fcf0
mov eax, dword [esi + 0xc]
mov dword [esi + 8], eax
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 8]
mov dword [eax + 4], 0
mov dword [eax], 3
mov dword [eax + 8], ecx
jmp 0x10057abd
test al, al
je 0x100579ee
mov eax, dword [0x1027132c]
mov eax, dword [eax]
cmp eax, 1
ja 0x100579ee
mov edi, dword [0x1026fe20]
movzx eax, byte [edi + 8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x10057948
test ecx, ecx
je 0x100579ee
push edi
call fcn.101c9b80
add esp, 4
mov edi, dword [0x1026fe20]
test al, al
je 0x100579ee
movzx eax, al
push eax
push dword [edi]
call fcn.101498b0
add esp, 8
test al, al
mov eax, dword [0x1026fe20]
je 0x100579ee
mov eax, dword [eax]
cmp dword [eax + 0x20], 0
je 0x10057b2d
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x10057b2d
mov dword [esi + 0x10], edx
lea edx, [eax + 0x20]
lea edi, [esi + 0x10]
lea ebx, [esi + 0x70]
movq xmm0, qword [edx]
movq qword [esi + 0x14], xmm0
mov edx, dword [edx + 8]
mov dword [esi + 0x40], edi
lea edi, [esi + 0x40]
mov dword [esi + 0x44], ebx
mov dword [esi + 0x70], 0x101d7ef4
mov dword [esi + 0x74], 1
mov dword [esi + 0x80], 0
mov dword [esi + 0x78], 4
mov dword [esi + 0x7c], 0
mov dword [esi + 0x48], 0x101d7b24
mov dword [esi + 0x28], edi
mov dword [esi + 0x2c], 1
mov dword [esi + 0x30], ecx
lea ecx, [esi + 0x28]
mov dword [esi + 0x1c], edx
mov dword [esi + 0x20], 0
push ecx
push eax
call fcn.1014a4e0
add esp, 8
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x44], 0
mov dword [ecx + 0x40], 3
call fcn.100583e0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
call fcn.10055f00
mov eax, dword [esi + 0x110]
mov ebx, dword [esi + 0x114]
mov dword [esi + 0xc], eax
jmp 0x10057a96
mov ecx, edi
mov edx, ebx
xor eax, eax
xor ecx, 0xfffffffe
not edx
or edx, ecx
je 0x10057a63
mov eax, edi
mov ecx, 0
mov edx, edi
and eax, ebx
cmp eax, 0xffffffff
mov eax, ebx
jne 0x10057a67
mov cl, 2
jmp 0x10057a67
mov cl, 1
xor edx, edx
mov edi, dword [ebp + 0xc]
or byte [esi + 8], 1
mov ebx, dword [esi + 0x3c]
mov dword [edi + 0x44], 0
mov dword [edi + 0x40], 1
jmp 0x10057a7b
mov cl, 1
xor edx, edx
mov edi, dword [ebp + 0xc]
mov ebx, dword [esi + 0x3c]
mov dword [edi + 0x44], 0
mov dword [edi + 0x40], 2
mov byte [edi + 0x48], cl
mov byte [edi + 0x49], 0
mov dword [edi + 0x50], edx
mov dword [edi + 0x54], eax
mov dword [edi + 0x5c], 0
mov dword [edi + 0x58], 0
lea eax, [esi + 0xc8]
push 0x48
push eax
mov edi, dword [ebp + 8]
push edi
call sub.VCRUNTIME140.dll_memcpy
mov eax, edi
add esp, 0xc
mov ecx, dword [esi + 0xc]
movzx edx, byte [esi + 8]
mov dword [edi + 0x4c], ebx
mov dword [edi + 0x48], ecx
mov byte [edi + 0x50], dl
mov ecx, dword [esi + 0x128]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x101d7e64
push 0x22
push 0x101d7a41
call fcn.101cc4e0
push 0x101d7e8c
push 0x22
push 0x101d7a41
call fcn.101cc4e0
add esp, 0xc
jmp 0x10057b41
mov byte [esi + 7], 1
push 0x101d7f1c
push 0x22
push 0x101d7a41
call fcn.101cc4e0
add esp, 0xc
jmp 0x10057b41
mov byte [esi + 7], 1
push 0x101d7efc
push 0x22
push 0x101d7a41
call fcn.101cc4e0
add esp, 0xc
jmp 0x10057b41
push 0x101d7eb8
push 0x22
push 0x101d7a41
call fcn.101cc4e0
add esp, 0xc
ud2