Function at 0x4311c0
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x468baa
mov eax, dword fs:[0]
push eax
mov eax, 0x2804
call fcn.0045b480
mov eax, dword [0x48e190]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0x1c]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x25f4], edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 0x25ec], edx
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0x25c4], ebx
xor ebx, ebx
mov dword [ebp - 0x25d8], ecx
mov dword [ebp - 0x25dc], esi
mov dword [ebp - 0x25fc], edi
mov dword [ebp - 0x25e4], eax
mov dword [ebp - 0x25d4], edx
mov dword [ebp - 0x25b4], ebx
mov dword [ebp - 4], ebx
cmp byte [ebp + 0x24], bl
je 0x4312c9
cmp dword [edx + 0x14], ebx
je 0x431296
cmp dword [edx + 0x18], 0x10
jb 0x431258
mov esi, dword [edx + 4]
jmp 0x43125b
lea esi, [edx + 4]
cmp dword [eax + 0x18], 0x10
jb 0x431266
mov edx, dword [eax + 4]
jmp 0x431269
lea edx, [eax + 4]
cmp dword [edi + 0x18], 0x10
jb 0x431274
mov eax, dword [edi + 4]
jmp 0x431277
lea eax, [edi + 4]
push esi
push edx
push eax
push dword [ebp - 0x25dc]
mov eax, dword [ecx]
push str._s_http:___s_s_If_None_Match:___s_
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
add esp, 0x14
jmp 0x4312c9
cmp dword [eax + 0x18], 0x10
jb 0x4312a1
mov eax, dword [eax + 4]
jmp 0x4312a4
add eax, 4
cmp dword [edi + 0x18], 0x10
jb 0x4312af
mov edx, dword [edi + 4]
jmp 0x4312b2
lea edx, [edi + 4]
push eax
mov eax, dword [ecx]
push edx
push esi
push str._s_http:___s_s
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
add esp, 0x10
lea esi, [ebp - 0x25b0]
call fcn.0040df3c
mov edx, edi
lea ecx, [ebp - 0x2678]
call fcn.0042c73d
cmp dword [eax + 0x18], 8
jb 0x4312ec
mov esi, dword [eax + 4]
jmp 0x4312ef
lea esi, [eax + 4]
lea eax, [ebp - 0x25b0]
call fcn.0040e58e
lea eax, [ebp - 0x25b0]
push eax
mov ecx, esi
call fcn.0040e1a2
push ebx
push 1
lea esi, [ebp - 0x2678]
mov dword [ebp - 0x25bc], eax
call fcn.00409732
lea ecx, [ebp - 0x269c]
call fcn.0042eb36
lea eax, [ebp - 0x269c]
push eax
lea eax, [ebp - 0x108]
push eax
mov byte [ebp - 4], 1
call fcn.00434198
mov byte [ebp - 4], 2
mov edi, dword [ebp - 0x2698]
push 0x438157
lea ecx, [ebp - 0x25cc]
mov dword [ebp - vtable.type_info.0], 0x4973e0
mov dword [ebp - 0x25c8], ebx
call fcn.0042e20a
mov dword [ebp - 0x2634], eax
mov dword [ebp - 0x2630], ebx
mov dword [ebp - 0x262c], ebx
mov byte [ebp - 4], 3
xor eax, eax
lea edi, [ebp - 0x2608]
stosb byte es:[edi], al
push dword [ebp - 0x2608]
lea esi, [ebp - 0x2630]
call fcn.00435894
mov byte [ebp - 4], 4
cmp dword [ebp - 0x25bc], ebx
je 0x4313d4
movzx eax, word [ebp - 0x164]
mov dword [ebp - 0x2608], eax
lea eax, [ebp - 0x2650]
push eax
lea edi, [ebp - 0x2608]
call fcn.00435a91
pop ecx
mov byte [ebp - 4], 5
mov dword [ebp - 0x25b4], 1
jmp 0x4313f5
push str.http
lea ecx, [ebp - 0x27dc]
call fcn.0040815e
mov dword [ebp - 4], 6
mov dword [ebp - 0x25b4], 2
push eax
lea ecx, [ebp - 0x124]
call fcn.00408180
mov dword [ebp - 4], 7
test byte [ebp - 0x25b4], 2
je 0x431426
and dword [ebp - 0x25b4], 0xfffffffd
push ebx
push 1
lea ecx, [ebp - 0x27dc]
call fcn.0040949a
mov byte [ebp - 4], 9
test byte [ebp - 0x25b4], 1
je 0x431448
and dword [ebp - 0x25b4], 0xfffffffe
push ebx
push 1
lea ecx, [ebp - 0x2650]
call fcn.0040949a
cmp dword [ebp - 0x25bc], ebx
je 0x43148e
lea eax, [ebp - 0x256e]
push eax
lea eax, [ebp - 0x2678]
call fcn.00408208
mov byte [ebp - 4], 0xa
or dword [ebp - 0x25b4], 4
lea edx, [ebp - 0x2678]
lea ecx, [ebp - 0x2620]
call fcn.0042c6ca
mov dword [ebp - 4], 0xb
or dword [ebp - 0x25b4], 8
jmp 0x431494
mov eax, dword [ebp - 0x25fc]
push eax
lea ecx, [ebp - 0x140]
call fcn.00408180
mov dword [ebp - 4], 0xc
test byte [ebp - 0x25b4], 8
je 0x4314c5
and dword [ebp - 0x25b4], 0xfffffff7
push ebx
push 1
lea ecx, [ebp - 0x2620]
call fcn.0040949a
mov byte [ebp - 4], 0xe
test byte [ebp - 0x25b4], 4
je 0x4314e7
and dword [ebp - 0x25b4], 0xfffffffb
push ebx
push 1
lea esi, [ebp - 0x2678]
call fcn.00409732
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0xc0]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x140]
push eax
lea ecx, [ebp - 0xa0]
call fcn.00408180
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xf
call fcn.00408180
mov dword [ebp - 0xc0], 0x400
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xb8], 1
mov dword [ebp - 0xb4], 6
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], ebx
lea eax, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x2690]
push eax
mov byte [ebp - 4], 0x10
call fcn.00432e66
mov dword [ebp - 0x2684], ebx
mov dword [ebp - 0x2680], ebx
mov dword [ebp - 0x267c], ebx
mov byte [ebp - 4], 0x12
mov eax, dword [0x49891c]
cmp eax, ebx
jle 0x431603
mov esi, dword [ebp - 0x25dc]
push 5
mov edi, str.POST
pop ecx
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x431603
imul eax, eax, 0x3e8
mov dword [ebp - 0x25bc], eax
lea edx, [ebp - 0x2658]
lea eax, [ebp - 0x108]
call fcn.00432d8f
mov eax, dword [eax]
mov esi, dword [sym.imp.WS2_32.dll_setsockopt]
push 4
lea ecx, [ebp - 0x25bc]
push ecx
push 0x1006
mov edi, 0xffff
push edi
push eax
call esi
lea edx, [ebp - 0x2658]
lea eax, [ebp - 0x108]
call fcn.00432d8f
mov eax, dword [eax]
push 4
lea ecx, [ebp - 0x25bc]
push ecx
push 0x1005
push edi
push eax
call esi
call fcn.0041300e
mov dword [ebp - 0x25c8], eax
mov eax, fcn.00413c09
mov ecx, 0x2af9
mov dword [ebp - 0x25cc], ecx
test eax, eax
je 0x4316c2
cmp dword [ebp - 0x2690], ebx
je 0x4316c2
lea esi, [ebp - 0x108]
call fcn.00432d1c
lea eax, [ebp - 0x2610]
push eax
lea esi, [ebp - 0x2690]
call fcn.00432f04
mov byte [ebp - 4], 0x13
mov edi, dword [eax]
mov esi, dword [eax + 8]
mov eax, dword [edi + 0x10]
sub eax, dword [edi + 0xc]
push 0x54
cdq
pop ecx
idiv ecx
cmp esi, eax
jb 0x43166d
call fcn.00448161
imul esi, esi, 0x54
add esi, dword [edi + 0xc]
push 7
pop ecx
lea eax, [ebp - 0x2650]
lea edi, [ebp - 0x2650]
rep movsd dword es:[edi], dword [esi]
push eax
lea esi, [ebp - 0x25cc]
lea edi, [ebp - 0x2628]
lea eax, [ebp - 0x108]
call fcn.00432dd4
lea eax, [ebp - 0x260c]
mov byte [ebp - 4], 0x12
call fcn.004018fc
mov ecx, dword [ebp - 0x25cc]
mov eax, ecx
neg eax
sbb eax, eax
test eax, fcn.00413c09
jne 0x431626
neg ecx
sbb ecx, ecx
test ecx, fcn.00413c09
je 0x431853
cmp byte [ebp + 0x24], bl
je 0x431773
lea eax, [ebp - 0x2650]
push eax
lea eax, [ebp - 0x25cc]
call fcn.0040192c
mov byte [ebp - 4], 0x14
cmp dword [eax + 0x18], 0x10
jb 0x4316fc
mov eax, dword [eax + 4]
jmp 0x4316ff
add eax, 4
mov edi, dword [ebp - 0x25d8]
push eax
mov eax, dword [edi]
push str.Failed_to_find_an_endpoint:__s
mov ecx, edi
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
pop ecx
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x2650]
mov byte [ebp - 4], 0x12
call fcn.0040949a
mov eax, dword [ebp - 0x25e4]
cmp dword [eax + 0x18], 0x10
jb 0x43173e
mov eax, dword [eax + 4]
jmp 0x431741
add eax, 4
mov ecx, dword [ebp - 0x25fc]
cmp dword [ecx + 0x18], 0x10
jb 0x431752
mov ecx, dword [ecx + 4]
jmp 0x431755
add ecx, 4
push eax
mov eax, dword [edi]
push ecx
push dword [ebp - 0x25dc]
mov ecx, edi
push str.Trying_WinInet_for__s_http:___s_s
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
add esp, 0x10
sub esp, 0x20
lea ecx, [ebp + 0x28]
mov ebx, esp
mov dword [ebp - 0x2608], esp
call fcn.00432ba6
push dword [ebp - 0x25c4]
mov ecx, dword [ebp - 0x25e4]
push dword [ebp - 0x25d4]
push dword [ebp - 0x25ec]
push dword [ebp - 0x25f4]
push dword [ebp - 0x25fc]
push dword [ebp - 0x25dc]
call fcn.0043081a
add esp, 0x38
mov edi, eax
lea eax, [ebp - 0x2680]
mov byte [ebp - 4], 0x11
call fcn.004018fc
lea eax, [ebp - 0x268c]
mov byte [ebp - 4], 0x10
call fcn.004018fc
xor ebx, ebx
xor esi, esi
push ebx
inc esi
push esi
lea ecx, [ebp - 0x84]
call fcn.0040949a
push ebx
push esi
lea ecx, [ebp - 0xa0]
call fcn.0040949a
push ebx
push esi
lea ecx, [ebp - 0x140]
call fcn.0040949a
push ebx
push esi
lea ecx, [ebp - 0x124]
call fcn.0040949a
lea eax, [ebp - 0x2634]
push eax
mov byte [ebp - 4], 2
call fcn.00432eb9
lea eax, [ebp - 0x108]
push eax
mov byte [ebp - 4], 1
call fcn.004333c0
lea eax, [ebp - 0x269c]
push eax
mov byte [ebp - 4], bl
call fcn.0042eb80
or dword [ebp - 4], 0xffffffff
lea esi, [ebp + 0x28]
call fcn.0041ff7a
mov eax, edi
jmp 0x4322b4
mov eax, dword [ebp - 0x25f4]
lea esi, [ebp - 0x2620]
call fcn.0042bbe7
mov edi, dword [eax + 8]
mov esi, dword [ebp - 0x25f4]
add edi, dword [eax]
push 2
call fcn.0042bb6e
mov eax, dword [ebp - 0x25f4]
lea esi, [ebp - 0x2620]
call fcn.0042bbe7
mov ecx, dword [eax + 8]
add ecx, dword [eax]
mov esi, dword [ebp - 0x25f4]
sub ecx, edi
push ebx
mov dword [ebp - 0x25bc], ecx
call fcn.0042bb6e
push 0xffffffffffffffff
lea eax, [ebp - 0x27c0]
push eax
call fcn.00432f6d
push 1
lea eax, [ebp - 0x27c0]
push eax
lea eax, [ebp - 0x26d4]
push eax
mov byte [ebp - 4], 0x15
call fcn.004082bc
push str._HTTP_1.0_r_n
push ecx
mov byte [ebp - 4], 0x16
push dword [ebp - 0x25e4]
lea eax, [ebp - 0x26d4]
push ecx
push 0x476c3c
push ecx
push dword [ebp - 0x25dc]
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0042c55f
add esp, 0xc
push eax
call fcn.0040b27b
pop ecx
pop ecx
push 0x478208
push ecx
push dword [ebp - 0x25fc]
lea eax, [ebp - 0x26d4]
push ecx
push str.Host:
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0042c55f
add esp, 0xc
push eax
call fcn.0040b27b
lea eax, [ebp - 0x26d4]
push str.Accept:___r_n
push eax
call fcn.0040b27b
add esp, 0x10
cmp dword [ebp - 0x25bc], ebx
jne 0x43196d
mov esi, dword [ebp - 0x25dc]
push 5
mov edi, str.POST
pop ecx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x43199d
push 0x478208
push ecx
push dword [ebp - 0x25bc]
lea eax, [ebp - 0x26d4]
push ecx
push str.Content_Length:
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0040fad9
pop ecx
push eax
call fcn.0040b27b
pop ecx
pop ecx
mov edi, 0x478208
cmp dword [ebp - 0x25ec], ebx
je 0x4319d8
push edi
push ecx
push dword [ebp - 0x25ec]
lea eax, [ebp - 0x26d4]
push ecx
push str.Content_Type:
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0040b27b
pop ecx
pop ecx
lea eax, [ebp - 0x26d4]
push str.Connection:_close_r_n
push eax
call fcn.0040b27b
mov eax, dword [ebp - 0x25d4]
pop ecx
pop ecx
cmp dword [eax + 0x14], ebx
je 0x431a23
push 0x47825c
push ecx
push eax
push ecx
lea eax, [ebp - 0x26d4]
push str.If_None_Match:__
push eax
call fcn.0040b27b
add esp, 0xc
push eax
call fcn.0042c55f
add esp, 0xc
push eax
call fcn.0040b27b
pop ecx
pop ecx
lea eax, [ebp - 0x26d4]
push edi
push eax
call fcn.0040b27b
pop ecx
pop ecx
cmp dword [ebp - 0x25bc], ebx
je 0x431a95
mov eax, dword [ebp - 0x26d4]
mov eax, dword [eax + 4]
mov esi, dword [ebp + eax - 0x26ac]
mov eax, dword [ebp - 0x25f4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + eax + 0x28]
push esi
mov byte [ebp - 0x260c], bl
push dword [ebp - 0x260c]
cmp eax, ebx
mov byte [ebp - 0x25bc], 1
push dword [ebp - 0x25bc]
sete cl
push ebx
mov byte [ebp - 0x2624], cl
push dword [ebp - 0x2624]
push eax
lea eax, [ebp - 0x2628]
push eax
call fcn.00435aa6
add esp, 0x1c
lea eax, [ebp - 0x27c0]
push eax
lea eax, [ebp - 0x108]
push eax
call fcn.00435b25
pop ecx
pop ecx
push 0xffffffffffffffff
lea eax, [ebp - 0x2768]
push eax
call fcn.00432f6d
push edi
lea ecx, [ebp - 0x2678]
mov byte [ebp - 4], 0x17
call fcn.0040815e
lea eax, [ebp - 0x2678]
push eax
lea eax, [ebp - 0x2768]
push eax
lea eax, [ebp - 0x108]
push eax
mov byte [ebp - 4], 0x18
call fcn.00435b74
add esp, 0xc
push ebx
push 1
lea ecx, [ebp - 0x2678]
mov byte [ebp - 4], 0x17
call fcn.0040949a
push 1
lea eax, [ebp - 0x2768]
push eax
lea eax, [ebp - 0x2710]
push eax
call fcn.00410b66
push 0xf
pop esi
push ebx
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x4c], esi
call fcn.0040a1d7
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x2710]
push eax
mov byte [ebp - 4], 0x1a
call fcn.0042dda4
pop ecx
pop ecx
lea eax, [ebp - 0x25d0]
push eax
lea eax, [ebp - 0x2710]
push eax
call fcn.00432856
push ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.0040a1d7
lea eax, [ebp - 0x48]
push eax
lea esi, [ebp - 0x2710]
mov byte [ebp - 4], 0x1b
call fcn.00423eb7
mov eax, dword [ebp - 0x2710]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0x2708], 6
pop ecx
jne 0x431bac
push 5
push ebx
lea eax, [ebp - 0x64]
push eax
lea esi, [ebp - 0x2650]
call fcn.0042cc90
mov byte [ebp - 4], 0x1c
or dword [ebp - 0x25b4], 0x10
push str.HTTP_
call fcn.004081e3
mov byte [ebp - 0x25b5], bl
test eax, eax
je 0x431bb3
mov byte [ebp - 0x25b5], 1
mov dword [ebp - 4], 0x1b
test byte [ebp - 0x25b4], 0x10
je 0x431bd1
push ebx
push 1
lea ecx, [ebp - 0x2650]
call fcn.0040949a
cmp byte [ebp - 0x25b5], bl
je 0x431c11
push str.Invalid_response
lea ecx, [ebp - 0x2650]
call fcn.0040815e
lea eax, [ebp - 0x2650]
push eax
lea eax, [ebp - 0x27e8]
push eax
mov byte [ebp - 4], 0x1d
call fcn.00401273
push 0x481348
lea eax, [ebp - 0x27e8]
push eax
call fcn.0044c1a3
mov edi, dword [ebp - 0x25e4]
cmp byte [ebp + 0x24], bl
je 0x431c66
cmp dword [edi + 0x18], 0x10
jb 0x431c27
mov ecx, dword [edi + 4]
jmp 0x431c2a
lea ecx, [edi + 4]
mov eax, dword [ebp - 0x25fc]
cmp dword [eax + 0x18], 0x10
jb 0x431c3b
mov eax, dword [eax + 4]
jmp 0x431c3e
add eax, 4
push dword [ebp - 0x25d0]
push ecx
mov ecx, dword [ebp - 0x25d8]
push eax
push dword [ebp - 0x25dc]
mov eax, dword [ecx]
push str._s_http:___s_s_status_code:_d
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
add esp, 0x14
mov eax, dword [ebp - 0x25d0]
sub eax, 0xc8
je 0x431e01
sub eax, 0x68
je 0x431e01
cmp byte [ebp + 0x24], bl
je 0x431cf4
cmp dword [ebp - 0x30], 0x10
mov eax, dword [ebp - 0x44]
jae 0x431c91
lea eax, [ebp - 0x44]
mov ebx, dword [ebp - 0x25d8]
push eax
push dword [ebp - 0x25d0]
mov eax, dword [ebx]
push str.Response_returned_with_bad_status_code__d:__s
mov ecx, ebx
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
add esp, 0xc
cmp dword [edi + 0x18], 0x10
jb 0x431cbf
mov edi, dword [edi + 4]
jmp 0x431cc2
add edi, 4
mov eax, dword [ebp - 0x25fc]
cmp dword [eax + 0x18], 0x10
jb 0x431cd3
mov eax, dword [eax + 4]
jmp 0x431cd6
add eax, 4
push edi
push eax
push dword [ebp - 0x25dc]
mov eax, dword [ebx]
push str.Trying_WinInet_for__s_http:___s_s
mov ecx, ebx
call dword [eax + 0xc]
mov esi, eax
call fcn.00409019
add esp, 0x10
sub esp, 0x20
lea ecx, [ebp + 0x28]
mov ebx, esp
mov dword [ebp - 0x2608], esp
call fcn.00432ba6
push dword [ebp - 0x25c4]
mov ecx, dword [ebp - 0x25e4]
push dword [ebp - 0x25d4]
push dword [ebp - 0x25ec]
push dword [ebp - 0x25f4]
push dword [ebp - 0x25fc]
push dword [ebp - 0x25dc]
call fcn.0043081a
add esp, 0x38
push 0
push 1
lea ecx, [ebp - 0x48]
mov ebx, eax
call fcn.0040949a
push 0
push 1
lea ecx, [ebp - 0x64]
call fcn.0040949a
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x2710]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
lea eax, [ebp - 0x2708]
mov edi, vtable.std::ios_base.0
push eax
mov dword [ebp - 0x2708], edi
call fcn.00446fec
pop ecx
lea esi, [ebp - 0x2728]
mov byte [ebp - 4], 0x16
call fcn.0042be18
push dword [ebp - 0x2728]
call fcn.00447c32
pop ecx
lea ecx, [ebp - 0x2768]
call fcn.004083cc
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x26d4]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
lea eax, [ebp - 0x26d0]
push eax
mov dword [ebp - 0x26d0], edi
call fcn.00446fec
pop ecx
lea esi, [ebp - 0x2780]
mov byte [ebp - 4], 0x12
call fcn.0042be18
push dword [ebp - 0x2780]
call fcn.00447c32
pop ecx
lea ecx, [ebp - 0x27c0]
call fcn.004083cc
mov edi, ebx
jmp 0x4317ba
push str._r_n_r_n
lea ecx, [ebp - 0x2678]
call fcn.0040815e
lea eax, [ebp - 0x2678]
push eax
lea eax, [ebp - 0x2768]
push eax
lea eax, [ebp - 0x108]
push eax
mov byte [ebp - 4], 0x1e
call fcn.00435b74
add esp, 0xc
push ebx
push 1
lea ecx, [ebp - 0x2678]
mov byte [ebp - 4], 0x1b
call fcn.0040949a
push dword [ebp - 0x25d4]
mov dword [ebp - 0x25bc], ebx
call fcn.0043274b
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], 0xf
call fcn.0040a1d7
mov byte [ebp - 4], 0x1f
jmp 0x431fd0
push 0x4782e8
lea eax, [ebp - 0x2c]
call fcn.004081e3
test eax, eax
je 0x431ffd
lea eax, [ebp - 0x2600]
lea ecx, [ebp - 0x2c]
call fcn.004081a6
mov esi, dword [eax + 4]
mov edi, dword [eax]
lea eax, [ebp - 0x25f8]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2624], esi
call fcn.0041f583
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x260c], ecx
mov dword [ebp - 0x2608], eax
lea eax, [ebp - 0x25e0]
lea ecx, [ebp - 0x2c]
call fcn.004081a6
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x25e8], edi
mov edi, dword [ebp - 0x2608]
mov dword [ebp - 0x25e4], esi
sub edi, eax
lea esi, [ebp - 0x25e8]
mov dword [ebp - 0x25f0], ecx
mov dword [ebp - 0x25ec], eax
call fcn.004379fd
mov eax, dword [ebp - 0x25ec]
mov esi, eax
cmp eax, dword [ebp - 0x2608]
je 0x431f27
mov edi, dword [ebp - 0x2624]
sub edi, eax
movsx eax, byte [esi]
push eax
call fcn.00449d55
mov byte [esi + edi], al
inc esi
pop ecx
cmp esi, dword [ebp - 0x2608]
jne 0x431f11
lea eax, [ebp - 0x2c]
push eax
mov eax, 0x498a38
call fcn.0043278f
test eax, eax
lea eax, [ebp - 0x2c]
jne 0x431f6d
push 0xffffffffffffffff
push dword [0x498a4c]
lea esi, [ebp - 0x2650]
push eax
call fcn.0042cc90
cmp dword [eax + 0x18], 0x10
jb 0x431f5b
mov eax, dword [eax + 4]
jmp 0x431f5e
add eax, 4
push eax
call fcn.00449005
pop ecx
mov dword [ebp - 0x25bc], eax
jmp 0x431fb2
push eax
mov eax, 0x498a54
call fcn.0043278f
test eax, eax
jne 0x431fc0
mov eax, dword [0x498a68]
mov ecx, dword [ebp - 0x18]
sub ecx, eax
sub ecx, 3
push ecx
inc eax
push eax
lea eax, [ebp - 0x2c]
push eax
lea esi, [ebp - 0x2650]
call fcn.0042cc90
mov ecx, dword [ebp - 0x25d4]
push 0xffffffffffffffff
push ebx
push eax
mov byte [ebp - 4], 0x20
call fcn.0040932b
mov byte [ebp - 4], 0x1f
push ebx
push 1
lea ecx, [ebp - 0x2650]
call fcn.0040949a
cmp byte [ebp + 0x20], bl
jne 0x431fd0
mov ecx, dword [ebp - 0x25d8]
mov eax, dword [ecx]
call dword [eax + 0x14]
lea eax, [ebp - 0x2c]
push eax
lea esi, [ebp - 0x2710]
call fcn.00423eb7
pop ecx
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
mov eax, dword [ecx + 8]
and al, 6
movsx eax, al
neg eax
sbb eax, eax
not eax
test ecx, eax
jne 0x431e6e
cmp dword [ebp - 0x25d0], 0x130
je 0x43213e
mov eax, dword [ebp - 0x2744]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2748]
sub eax, dword [ecx]
je 0x432031
lea eax, [ebp - 0x2768]
push eax
push dword [ebp - 0x25c4]
call fcn.0041f62e
mov eax, dword [ebp - 0x25c4]
lea esi, [ebp - 0x2620]
call fcn.00432821
mov ecx, dword [eax + 8]
add ecx, dword [eax]
push dword [ebp - 0x25bc]
push ecx
lea ecx, [ebp + 0x28]
call fcn.00432bdb
xor edi, edi
inc edi
mov eax, edi
push eax
lea eax, [ebp - 0x108]
push eax
lea esi, [ebp - 0x25cc]
lea eax, [ebp - 0x2768]
call fcn.00435bba
pop ecx
pop ecx
test eax, eax
je 0x4320ed
mov dword [ebp - 0x2608], edi
mov edi, dword [ebp - 0x25d8]
lea eax, [ebp - 0x2768]
push eax
push dword [ebp - 0x25c4]
call fcn.0041f62e
mov eax, dword [ebp - 0x25c4]
lea esi, [ebp - 0x2678]
call fcn.00432821
mov ecx, dword [eax + 8]
add ecx, dword [eax]
push dword [ebp - 0x25bc]
push ecx
lea ecx, [ebp + 0x28]
call fcn.00432bdb
cmp byte [ebp + 0x20], bl
jne 0x4320c9
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x14]
push dword [ebp - 0x2608]
lea eax, [ebp - 0x108]
push eax
lea esi, [ebp - 0x25cc]
lea eax, [ebp - 0x2768]
call fcn.00435bba
pop ecx
pop ecx
test eax, eax
jne 0x432086
call fcn.0042e06c
push 2
pop ecx
mov dword [ebp - 0x260c], ecx
mov dword [ebp - 0x2608], eax
lea eax, [ebp - 0x260c]
lea ecx, [ebp - 0x25cc]
call fcn.0042df57
test al, al
je 0x43214a
push str.Failed_to_read_response
push dword [ebp - 0x25c8]
lea edi, [ebp - 0x280c]
push dword [ebp - 0x25cc]
call fcn.00401948
push 0x481c4c
mov eax, edi
jmp 0x431c0b
push 1
push 1
lea ecx, [ebp + 0x28]
call fcn.00432bdb
mov eax, dword [ebp - 0x25d0]
push ebx
push 1
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2608], eax
call fcn.0040949a
push ebx
push 1
lea ecx, [ebp - 0x48]
call fcn.0040949a
push ebx
push 1
lea ecx, [ebp - 0x64]
call fcn.0040949a
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x2710]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
lea eax, [ebp - 0x2708]
mov edi, vtable.std::ios_base.0
push eax
mov dword [ebp - 0x2708], edi
call fcn.00446fec
pop ecx
lea esi, [ebp - 0x2728]
mov byte [ebp - 4], 0x16
call fcn.0042be18
push dword [ebp - 0x2728]
call fcn.00447c32
pop ecx
lea ecx, [ebp - 0x2768]
call fcn.004083cc
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x26d4]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
lea eax, [ebp - 0x26d0]
push eax
mov dword [ebp - 0x26d0], edi
call fcn.00446fec
pop ecx
lea esi, [ebp - 0x2780]
mov byte [ebp - 4], 0x12
call fcn.0042be18
push dword [ebp - 0x2780]
call fcn.00447c32
pop ecx
lea ecx, [ebp - 0x27c0]
call fcn.004083cc
lea eax, [ebp - 0x2680]
mov byte [ebp - 4], 0x11
call fcn.004018fc
lea eax, [ebp - 0x268c]
mov byte [ebp - 4], 0x10
call fcn.004018fc
xor esi, esi
push ebx
inc esi
push esi
lea ecx, [ebp - 0x84]
call fcn.0040949a
push ebx
push esi
lea ecx, [ebp - 0xa0]
call fcn.0040949a
push ebx
push esi
lea ecx, [ebp - 0x140]
call fcn.0040949a
push ebx
push esi
lea ecx, [ebp - 0x124]
call fcn.0040949a
lea eax, [ebp - 0x2634]
push eax
mov byte [ebp - 4], 2
call fcn.00432eb9
lea eax, [ebp - 0x108]
push eax
mov byte [ebp - 4], 1
call fcn.004333c0
lea eax, [ebp - 0x269c]
push eax
mov byte [ebp - 4], bl
call fcn.0042eb80
or dword [ebp - 4], 0xffffffff
lea esi, [ebp + 0x28]
call fcn.0041ff7a
mov eax, dword [ebp - 0x2608]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00447c3d
leave
ret