Function at 0x4bf2c0
Capabilities:
Validate payment card number using luhn algorithm

Disassembly:
sub esp, 0x1c
mov ecx, dword [esp + 0x28]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x2c]
mov ecx, dword [ecx]
lea ebx, [esi + 0x88]
mov eax, dword [ebx + 0x4c]
mov ebp, ecx
push edi
push ecx
push 0xa
push eax
mov dword [esp + 0x2c], ecx
mov edi, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x3c], ecx
call sub.VCRUNTIME140.dll_memchr
mov ecx, eax
add esp, 0xc
test ecx, ecx
je 0x4c0033
sub edi, ecx
lea eax, [ebp - 1]
add eax, edi
lea ebp, [esi + 0x8c0]
mov edi, dword [esp + 0x38]
mov dword [edi], eax
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x14]
mov dword [ebx + 0x4c], eax
sub eax, ecx
push eax
push ecx
push ebp
call fcn.004a1740
add esp, 0xc
test eax, eax
jne 0x4c00e7
cmp dword [ebx + 0x48], eax
jne 0x4bf3b3
push ebp
call fcn.004a17a0
mov ebp, eax
lea eax, [esi + 0x8c0]
push eax
call fcn.004a17b0
mov edi, dword [esp + 0x3c]
add esp, 8
mov ecx, dword [edi + 0x1e8]
test dword [ecx + 0x44], 0x40000
je 0x4bf395
cmp ebp, 5
mov ecx, 5
sbb edi, edi
inc edi
cmp ebp, 5
cmova ebp, ecx
push ebp
push eax
push str.RTSP_
call fcn.004b4dc0
add esp, 0xc
test eax, eax
mov eax, 2
cmovne eax, edi
mov edi, dword [esp + 0x34]
jmp 0x4bf3a0
push ebp
push eax
push esi
call fcn.004c10e0
add esp, 0xc
cmp eax, 2
je 0x4c00ba
mov edi, dword [esp + 0x38]
lea ebp, [esi + 0x8c0]
push ebp
call fcn.004a17b0
mov edx, eax
add esp, 4
mov dword [esp + 0x18], edx
mov cl, byte [edx]
cmp cl, 0xa
je 0x4bf910
cmp cl, 0xd
je 0x4bf910
mov ecx, dword [ebx + 0x48]
mov edi, 4
mov dword [esp + 0x30], ebp
lea eax, [ecx + 1]
mov dword [ebx + 0x48], eax
test ecx, ecx
jne 0x4bf7db
mov ebp, dword [esp + 0x34]
mov eax, dword [ebp + 0x1e8]
mov eax, dword [eax + 0x44]
test al, 3
je 0x4bf608
mov al, byte [edx]
mov edi, edx
test al, al
je 0x4bf420
nop dword [eax]
cmp al, 0x20
je 0x4bf418
cmp al, 9
jne 0x4bf420
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4bf410
push 5
push str.HTTP_
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x4bf4d2
movsx ecx, byte [edi + 5]
mov eax, ecx
sub eax, 0x31
je 0x4bf513
sub eax, 1
je 0x4bf455
sub eax, 1
jne 0x4c010d
mov al, byte [edi + 6]
cmp al, 0x20
je 0x4bf460
cmp al, 9
jne 0x4bf4d2
lea edx, [ecx - 0x30]
mov cl, byte [edi + 7]
mov al, cl
lea edx, [edx + edx*4]
add edx, edx
sub al, 0x30
mov dword [esp + 0x14], edx
cmp al, 9
ja 0x4bf4d2
mov al, byte [edi + 8]
mov byte [esp + 0x30], al
sub al, 0x30
cmp al, 9
ja 0x4bf4d2
mov al, byte [edi + 9]
mov byte [esp + 0x13], al
sub al, 0x30
cmp al, 9
ja 0x4bf4d2
movsx eax, cl
lea ecx, [eax + eax*4]
movsx eax, byte [esp + 0x30]
lea eax, [eax + ecx*2]
lea ecx, [eax + eax*4]
movsx eax, byte [esp + 0x13]
lea ecx, [ecx - 0xa68]
lea ecx, [eax + ecx*2]
mov dword [ebx + 0x58], ecx
mov al, byte [edi + 0xa]
cmp al, 0x20
je 0x4bf5af
cmp al, 9
je 0x4bf5af
cmp al, 0xa
jl 0x4bf4d2
cmp al, 0xd
jle 0x4bf5af
lea edi, [esi + 0x8c0]
push edi
call fcn.004a17a0
add esp, 4
push eax
push edi
call fcn.004a17b0
add esp, 4
push eax
push esi
call fcn.004c10e0
add esp, 0xc
cmp eax, 1
jne 0x4c0197
lea edi, [ebp + 0x459]
mov dword [ebx + 0x58], 0xc8
mov byte [edi], 0xa
jmp 0x4bf6e3
cmp byte [edi + 6], 0x2e
jne 0x4c017c
mov al, byte [edi + 7]
cmp al, 0x30
je 0x4bf52c
cmp al, 0x31
jne 0x4c017c
mov cl, byte [edi + 8]
cmp cl, 0x20
je 0x4bf53d
cmp cl, 9
jne 0x4c017c
mov cl, byte [edi + 9]
movsx edx, al
mov al, cl
sub edx, 0x26
sub al, 0x30
mov dword [esp + 0x14], edx
cmp al, 9
ja 0x4c017c
mov al, byte [edi + 0xa]
mov byte [esp + 0x30], al
sub al, 0x30
cmp al, 9
ja 0x4c017c
mov al, byte [edi + 0xb]
mov byte [esp + 0x13], al
sub al, 0x30
cmp al, 9
ja 0x4c017c
movsx eax, cl
lea ecx, [eax + eax*4]
movsx eax, byte [esp + 0x30]
lea eax, [eax + ecx*2]
lea ecx, [eax + eax*4]
movsx eax, byte [esp + 0x13]
lea ecx, [ecx - 0xa68]
lea ecx, [eax + ecx*2]
mov dword [ebx + 0x58], ecx
mov al, byte [edi + 0xc]
cmp al, 0x20
je 0x4bf5af
cmp al, 9
je 0x4bf5af
sub al, 0xa
cmp al, 3
ja 0x4c017c
cmp ecx, 0x64
jl 0x4c0161
mov eax, edx
sub eax, 0xa
je 0x4bf5cd
sub eax, 1
je 0x4bf5cd
sub eax, 9
jne 0x4c0128
lea edi, [ebp + 0x459]
mov byte [edi], dl
cmp dword [ebx + 0x74], 3
jne 0x4bf5ee
cmp dl, 0x14
je 0x4bf5ee
push str.Lying_server__not_serving_HTTP_2
push esi
call fcn.004af830
add esp, 8
cmp byte [edi], 0x14
jae 0x4bf6e3
mov eax, dword [ebp + 0x428]
mov dword [eax], 0xffffffff
jmp 0x4bf6e3
test eax, 0x40000
je 0x4c0197
mov al, byte [edx]
mov edi, edx
test al, al
je 0x4bf630
nop dword [eax + eax]
cmp al, 0x20
je 0x4bf628
cmp al, 9
jne 0x4bf630
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4bf620
push 5
push str.RTSP_
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x4c0197
mov al, byte [edi + 5]
sub al, 0x30
cmp al, 9
ja 0x4c01d3
cmp byte [edi + 6], 0x2e
jne 0x4c01d3
mov al, byte [edi + 7]
sub al, 0x30
cmp al, 9
ja 0x4c01d3
mov al, byte [edi + 8]
cmp al, 0x20
je 0x4bf67b
cmp al, 9
jne 0x4c01d3
mov cl, byte [edi + 9]
mov al, cl
sub al, 0x30
cmp al, 9
ja 0x4c01d3
mov dh, byte [edi + 0xa]
mov al, dh
sub al, 0x30
cmp al, 9
ja 0x4c01d3
mov dl, byte [edi + 0xb]
mov al, dl
sub al, 0x30
cmp al, 9
ja 0x4c01d3
movsx eax, cl
lea ecx, [eax + eax*4]
movsx eax, dh
lea eax, [eax + ecx*2]
lea ecx, [eax + eax*4]
movsx eax, dl
lea eax, [eax + ecx*2]
add eax, 0xffffeb30
mov dword [ebx + 0x58], eax
mov al, byte [edi + 0xc]
cmp al, 0x20
je 0x4bf6da
cmp al, 9
je 0x4bf6da
sub al, 0xa
cmp al, 3
ja 0x4c01d3
lea edi, [ebp + 0x459]
mov byte [edi], 0xb
mov eax, dword [ebx + 0x58]
mov ecx, edi
mov dl, byte [esi + 0xd8d]
mov dword [esi + 0xdb0], eax
movzx eax, byte [edi]
mov dword [esi + 0xdb8], eax
mov al, byte [edi]
test dl, dl
je 0x4bf70d
cmp dl, al
jbe 0x4bf713
lea ecx, [ebp + 0x459]
mov byte [esi + 0xd8d], al
mov eax, dword [esi + 0xc68]
or eax, dword [esi + 0xc6c]
je 0x4bf73c
cmp byte [esi + 0xd8e], 0
jne 0x4bf73c
cmp dword [ebx + 0x58], 0x1a0
mov edi, ecx
jne 0x4bf73c
mov byte [ebx + 0xbd], 1
mov al, byte [edi]
cmp al, 0xa
jne 0x4bf75a
push str.HTTP_1.0__assume_close_after_body
push esi
call fcn.004af830
push 1
push ebp
call fcn.004b0d90
add esp, 0x10
jmp 0x4bf776
cmp al, 0x14
je 0x4bf76a
cmp dword [ebx + 0x74], 2
jne 0x4bf776
cmp dword [ebx + 0x58], 0x65
jne 0x4bf776
mov eax, dword [ebp + 0x428]
mov dword [eax], 2
mov ecx, dword [ebx + 0x58]
lea eax, [ecx - 0x64]
cmp eax, 0x63
setbe al
mov byte [ebx + 0xbe], al
sub ecx, 0xcc
je 0x4bf7a4
sub ecx, 0x64
jne 0x4bf7c6
cmp byte [esi + 0x3c8], cl
je 0x4bf7a4
mov byte [esi + 0xe74], 1
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov byte [ebx + 0xbe], 1
lea eax, [esi + 0x8c0]
mov edi, 0xc
mov dword [esp + 0x30], eax
lea ebp, [esi + 0x8c0]
push ebp
call fcn.004a17b0
push dword [esp + 0x34]
mov ebp, eax
call fcn.004a17a0
push eax
push 0
push ebp
mov dword [esp + 0x44], eax
call sub.VCRUNTIME140.dll_memchr
add esp, 0x14
test eax, eax
jne 0x4c01c4
mov ecx, dword [esi + 0xd0]
cmp ecx, 2
jl 0x4bf836
mov al, byte [ebp]
cmp al, 0x20
je 0x4bf81a
cmp al, 9
jne 0x4bf81f
cmp ecx, 2
jg 0x4bf836
push dword [esp + 0x30]
push 0x3a
push ebp
call sub.VCRUNTIME140.dll_memchr
add esp, 0xc
test eax, eax
je 0x4c01a8
push dword [esp + 0x18]
mov ebp, dword [esp + 0x38]
push ebp
push esi
call fcn.004be190
add esp, 0xc
test eax, eax
jne 0x4c00e7
mov eax, dword [ebx + 0x58]
sub eax, 0x64
cmp eax, 0x64
jae 0x4bf85e
or edi, 0x20
lea eax, [esi + 0x8c0]
push eax
call fcn.004a17a0
mov ebp, dword [esp + 0x1c]
push eax
push ebp
push 1
push esi
call fcn.004af6c0
lea eax, [esi + 0x8c0]
push eax
call fcn.004a17a0
push eax
push ebp
push edi
push esi
call fcn.004affb0
add esp, 0x28
test eax, eax
jne 0x4c00e7
lea eax, [esi + 0x8c0]
push eax
call fcn.004a17a0
mov ecx, dword [esi + 0xc4]
mov edx, eax
mov edi, 0x4b000
add esp, 4
add ecx, edx
cmp edx, edi
jae 0x4bf907
mov eax, dword [esi + 0xdf0]
add dword [esi + 0xc0], edx
add eax, edx
mov dword [esi + 0xdf0], eax
mov dword [esi + 0xc4], ecx
cmp ecx, edi
ja 0x4bf8ea
cmp eax, 0x5dc000
jbe 0x4bfff2
mov ecx, eax
mov edi, 0x5dc000
push edi
push ecx
push str.Too_large_response_headers:__zu____u
push esi
call fcn.004af760
add esp, 0x10
mov eax, 0x38
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
test ecx, ecx
jne 0x4bf8ea
jmp 0x4bfff2
mov ecx, dword [ebx + 0x58]
lea eax, [ecx - 0x64]
cmp eax, 0x63
ja 0x4bf9c1
sub ecx, 0x64
je 0x4bf991
sub ecx, 1
je 0x4bf93c
mov byte [ebx + 0xba], 1
mov dword [ebx + 0x48], 0
jmp 0x4bfa30
cmp dword [ebx + 0x74], 2
jne 0x4bf985
push str.Received_101__Switching_to_HTTP_2
push esi
call fcn.004af830
mov dword [ebx + 0x74], 3
mov byte [ebx + 0xba], 1
mov dword [ebx + 0x48], 0
push dword [edi]
push dword [ebx + 0x4c]
push 0
push dword [esp + 0x48]
push esi
call fcn.004c5ec0
add esp, 0x1c
test eax, eax
jne 0x4c00e7
mov dword [edi], eax
jmp 0x4bfa30
mov byte [ebx + 0xba], 0
jmp 0x4bfa30
cmp dword [ebx + 0x70], 0
mov byte [ebx + 0xba], 1
mov dword [ebx + 0x48], 0
jle 0x4bfa30
or dword [ebx + 0x5c], 2
push 0
push esi
mov dword [ebx + 0x70], 0
call fcn.0049a380
add esp, 8
jmp 0x4bfa30
cmp dword [ebx + 0x74], 2
jne 0x4bf9d2
push dword [esi + 0x7c]
call fcn.0049a540
add esp, 4
mov eax, dword [ebx]
and eax, dword [ebx + 4]
mov byte [ebx + 0xba], 0
cmp eax, 0xffffffff
jne 0x4bfa30
cmp byte [ebx + 0xbf], 0
jne 0x4bfa30
mov ebp, dword [esp + 0x34]
cmp byte [ebp + 0x1ce], 0
jne 0x4bfa30
cmp byte [ebp + 0x459], 0xb
jne 0x4bfa30
mov eax, dword [ebp + 0x1e8]
test dword [eax + 0x44], 0x40000
jne 0x4bfa30
cmp byte [esi + 0xd8e], 5
je 0x4bfa30
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end
push esi
call fcn.004af830
push 2
push ebp
call fcn.004b0d90
add esp, 0x10
cmp byte [ebx + 0xba], 0
jne 0x4bfab0
cmp byte [esi + 0x148], 0
jne 0x4bfa95
cmp byte [ebx + 0xbf], 0
jne 0x4bfa95
mov ecx, dword [ebx]
mov eax, ecx
mov edx, dword [ebx + 4]
and eax, edx
cmp eax, 0xffffffff
je 0x4bfab0
mov ebp, dword [esi + 0x4c8]
mov eax, ebp
mov edi, dword [esi + 0x4cc]
or eax, edi
je 0x4bfa7d
cmp edx, edi
jg 0x4c01e0
jl 0x4bfa7d
cmp ecx, ebp
ja 0x4c01e0
push edx
push ecx
push esi
call fcn.004c3250
mov eax, dword [ebx]
add esp, 0xc
mov ecx, dword [ebx + 4]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], ecx
jmp 0x4bfab0
mov dword [ebx + 8], 0xffffffff
mov dword [ebx + 0xc], 0xffffffff
mov dword [ebx], 0xffffffff
mov dword [ebx + 4], 0xffffffff
mov ebp, dword [esp + 0x34]
cmp byte [ebp + 0x1ce], 0
je 0x4bfb44
mov eax, dword [esi + 0xe0]
cmp eax, 0x191
jne 0x4bfad9
cmp dword [ebp + 0x258], 2
je 0x4bfae9
jmp 0x4bfafe
cmp eax, 0x197
jne 0x4bfafe
cmp dword [ebp + 0x25c], 2
jne 0x4bfafe
push str.Connection_closure_while_negotiating_auth__HTTP_1.0__
push esi
call fcn.004af830
add esp, 8
mov byte [esi + 0xd95], 1
cmp byte [ebp + 0x1ce], 0
je 0x4bfb44
mov eax, dword [esi + 0xe0]
cmp eax, 0x191
jne 0x4bfb1f
cmp dword [ebp + 0x2e0], 1
je 0x4bfb2f
jmp 0x4bfb44
cmp eax, 0x197
jne 0x4bfb44
cmp dword [ebp + 0x2e4], 1
jne 0x4bfb44
push str.Connection_closure_while_negotiating_auth__HTTP_1.0__
push esi
call fcn.004af830
add esp, 8
mov byte [esi + 0xd95], 1
cmp dword [ebp + 0x2e0], 3
jne 0x4bfb63
cmp dword [esi + 0xe0], 0x191
je 0x4bfb63
mov dword [ebp + 0x2e0], 4
cmp dword [ebp + 0x2e4], 3
jne 0x4bfb82
cmp dword [esi + 0xe0], 0x197
je 0x4bfb82
mov dword [ebp + 0x2e4], 4
mov eax, dword [ebx + 0x58]
sub eax, 0x64
cmp eax, 0x64
lea eax, [esi + 0x8c0]
push eax
sbb edi, edi
and edi, 0x20
add edi, 4
call fcn.004a17a0
add esp, 4
mov ebp, eax
lea eax, [esi + 0x8c0]
mov dword [esp + 0x28], ebp
push ebp
push eax
call fcn.004a17b0
add esp, 4
push eax
push edi
push esi
call fcn.004affb0
add esp, 0x10
test eax, eax
jne 0x4c00e7
mov ecx, dword [esi + 0xc4]
mov edx, 0x4b000
add ecx, ebp
cmp ebp, edx
jae 0x4bfc26
mov edi, dword [esi + 0xdf0]
add dword [esi + 0xc0], ebp
add edi, ebp
mov dword [esi + 0xdf0], edi
mov dword [esi + 0xc4], ecx
cmp ecx, edx
ja 0x4bfc09
cmp edi, 0x5dc000
jbe 0x4bfc2a
mov ecx, edi
mov edx, 0x5dc000
push edx
push ecx
push str.Too_large_response_headers:__zu____u
push esi
call fcn.004af760
add esp, 0x10
mov eax, 0x38
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
test ecx, ecx
jne 0x4bfc09
mov edi, dword [ebx + 0x58]
push esi
call fcn.004c17d0
add esp, 4
test al, al
jne 0x4c0286
lea eax, [edi - 0x64]
cmp eax, 0x63
ja 0x4bfc4e
mov eax, dword [esi + 0xc0]
jmp 0x4bfc50
xor eax, eax
mov ebp, dword [esi + 0x18]
xor edi, edi
mov dword [esi + 0xc8], eax
mov edx, 0xffffffff
mov ecx, dword [esi + 0x5ec]
mov eax, 0xffffffbf
test ecx, ecx
mov byte [esp + 0x13], 0
mov byte [esp + 0x30], 0
cmovne eax, edx
mov edx, dword [esi + 0xe0]
mov dword [esp + 0x1c], eax
lea eax, [edx - 0x64]
cmp eax, 0x63
jbe 0x4bfe7a
cmp byte [esi + 0xd95], 0
lea eax, [esi + 0xd95]
mov dword [esp + 0x18], eax
je 0x4bfcb7
cmp byte [esi + 0x6da], 0
mov eax, 0x16
cmovne edi, eax
jmp 0x4bfe72
cmp dword [esi + 0xd7c], edi
jne 0x4bfcc9
test ecx, ecx
je 0x4bfd37
lea eax, [esi + 0xd95]
cmp edx, 0x191
je 0x4bfce6
cmp byte [ebp + 0x1d8], 0
je 0x4bfd37
mov dword [esp + 0x18], eax
cmp edx, 0x12c
jge 0x4bfd37
push dword [esp + 0x1c]
lea eax, [esi + 0x980]
push eax
call fcn.004c1be0
add esp, 8
mov byte [esp + 0x13], al
test al, al
jne 0x4bfd08
mov ecx, dword [esp + 0x18]
mov byte [ecx], 1
cmp dword [esi + 0x984], 8
jne 0x4bfd37
cmp byte [ebp + 0x459], 0xb
jbe 0x4bfd37
push str.Forcing_HTTP_1.1_for_NTLM
push esi
call fcn.004af830
push 1
push ebp
call fcn.004b0d90
add esp, 0x10
mov byte [esi + 0xd8c], 2
cmp byte [ebp + 0x1ca], 0
je 0x4bfd7b
mov eax, dword [esi + 0xe0]
cmp eax, 0x197
je 0x4bfd5d
cmp byte [ebp + 0x1d8], 0
je 0x4bfd7b
cmp eax, 0x12c
jge 0x4bfd7b
lea eax, [esi + 0x990]
push 0xffffffffffffffbf
push eax
call fcn.004c1be0
add esp, 8
test al, al
jne 0x4bfd7f
mov byte [esi + 0xd95], 1
jmp 0x4bfd7f
mov al, byte [esp + 0x30]
cmp byte [esp + 0x13], 0
jne 0x4bfdee
test al, al
jne 0x4bfdee
cmp dword [esi + 0xe0], 0x12c
jge 0x4bfe4c
cmp byte [esi + 0x98c], al
jne 0x4bfe4c
cmp byte [ebp + 0x1d8], al
je 0x4bfe4c
mov al, byte [esi + 0xd8e]
test al, al
je 0x4bfe4c
cmp al, 5
je 0x4bfe4c
push dword [esi + 0xce4]
call dword [0x5bf14c]
add esp, 4
mov dword [esi + 0x118], eax
test eax, eax
je 0x4c01fb
mov byte [esi + 0x98c], 1
jmp 0x4bfe4c
mov al, byte [esi + 0xd8e]
test al, al
je 0x4bfe19
cmp al, 5
je 0x4bfe19
cmp byte [esi + 0xda3], 0
jne 0x4bfe19
push ebp
push esi
call fcn.004c15b0
mov edi, eax
add esp, 8
test edi, edi
jne 0x4c0200
push dword [esi + 0x118]
call dword [0x5bf144]
push dword [esi + 0xce4]
mov dword [esi + 0x118], 0
call dword [0x5bf14c]
add esp, 8
mov dword [esi + 0x118], eax
test eax, eax
je 0x4c01fb
push esi
call fcn.004c17d0
add esp, 4
test al, al
je 0x4bfe72
push dword [esi + 0xe0]
push str.The_requested_URL_returned_error:__d
push esi
call fcn.004af760
add esp, 0xc
mov edi, 0x16
test edi, edi
jne 0x4c0200
cmp dword [ebx + 0x58], 0x12c
mov ebp, dword [esp + 0x34]
jl 0x4bffe5
cmp byte [ebp + 0x1d8], 0
jne case.default.0x4bfec3
cmp byte [ebp + 0x1ce], 0
jne case.default.0x4bfec3
cmp byte [esi + 0xda3], 0
jne 0x4bffca
movzx eax, byte [esi + 0xd8e]
dec eax
cmp eax, 3
ja case.default.0x4bfec3
jmp dword [eax*4 + 0x4c02a4]
push 0
push esi
call fcn.0049a380
add esp, 8
cmp byte [ebx + 0xbc], 0
jne case.default.0x4bfec3
cmp dword [ebx + 0x58], 0x1a1
jne 0x4bff5c
cmp byte [esi + 0xd97], 0
je 0x4bff5c
mov eax, dword [ebx + 0x18]
or eax, dword [ebx + 0x1c]
jne 0x4bff12
cmp dword [ebx + 0x70], 1
jne 0x4bff12
push str.Got_HTTP_failure_417_while_waiting_for_a_100
push esi
call fcn.004af830
add esp, 8
jmp 0x4bff37
push str.Got_HTTP_failure_417_while_sending_data
push esi
call fcn.004af830
push 2
push ebp
call fcn.004b0d90
push ebp
push esi
call fcn.004c15b0
add esp, 0x18
test eax, eax
jne 0x4c00e7
push dword [esi + 0xce4]
mov byte [esi + 0xd98], 1
call dword [0x5bf14c]
push ebx
push esi
mov dword [esi + 0x118], eax
call fcn.004b72b0
add esp, 0xc
jmp case.default.0x4bfec3
cmp byte [esi + 0x6db], 0
je 0x4bff86
push str.HTTP_error_before_end_of_send__keep_sending
push esi
call fcn.004af830
add esp, 8
cmp dword [ebx + 0x70], 0
jle case.default.0x4bfec3
or dword [ebx + 0x5c], 2
mov dword [ebx + 0x70], 0
jmp case.default.0x4bfec3
push str.HTTP_error_before_end_of_send__stop_sending
push esi
call fcn.004af830
push 2
push ebp
call fcn.004b0d90
push ebx
push esi
call fcn.004b72b0
add esp, 0x18
test eax, eax
jne 0x4c00e7
mov byte [ebx + 0xbc], 1
cmp byte [esi + 0xd97], al
je case.default.0x4bfec3
mov dword [ebx + 0x70], 3
cmp byte [esi + 0xda3], 0
je 0x4bffe5
cmp dword [ebp + 0x204], 0xffffffff
je 0x4bffe5
push str.Keep_sending_data_to_get_tossed_away
push esi
call fcn.004af830
add esp, 8
or dword [ebx + 0x5c], 2
cmp byte [ebx + 0xba], 0
je 0x4c020a
lea eax, [esi + 0x8c0]
push eax
call fcn.004a17c0
mov edi, dword [ebx + 0x4c]
add esp, 4
cmp byte [edi], 0
je 0x4c00e5
mov ecx, dword [esp + 0x38]
mov eax, edi
mov dword [esp + 0x14], eax
mov ebp, dword [ecx]
push ebp
push 0xa
push eax
mov dword [esp + 0x3c], ebp
call sub.VCRUNTIME140.dll_memchr
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x4bf304
push dword [esp + 0x30]
lea edi, [esi + 0x8c0]
push dword [esp + 0x18]
push edi
call fcn.004a1740
add esp, 0xc
test eax, eax
jne 0x4c00e7
cmp dword [ebx + 0x48], eax
jne 0x4c00e5
push edi
call fcn.004a17a0
add esp, 4
push eax
push edi
call fcn.004a17b0
mov ebp, dword [esp + 0x3c]
add esp, 4
push eax
push ebp
push esi
call fcn.004c11e0
add esp, 0x10
cmp eax, 2
jne 0x4c00e5
push eax
push ebp
mov byte [ebx + 0xba], 0
mov dword [ebx + 0x44], eax
call fcn.004b0d90
add esp, 8
cmp byte [esi + 0x6fd], 0
jne 0x4c00e5
push str.Received_HTTP_0.9_when_not_allowed
push esi
call fcn.004af760
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
push 2
push edi
call fcn.004b0d90
add esp, 8
cmp byte [esi + 0x6fd], 0
je 0x4c009f
mov ecx, dword [esp + 0x38]
mov byte [ebx + 0xba], 0
cmp dword [ecx], 0
je 0x4c00ef
mov dword [ebx + 0x44], 1
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov eax, dword [esp + 0x20]
pop edi
mov dword [ebx + 0x44], 2
mov dword [ecx], eax
mov eax, dword [esp + 0x20]
pop esi
mov dword [ebx + 0x4c], eax
xor eax, eax
pop ebp
pop ebx
add esp, 0x1c
ret
push str.Unsupported_HTTP_version_in_response
push esi
call fcn.004af760
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov eax, 0x66666667
imul edx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [esp + 0x14]
lea eax, [ecx + ecx*4]
add eax, eax
sub edx, eax
push edx
push ecx
push str.Unsupported_HTTP_version___u._d__in_response
push esi
call fcn.004af760
add esp, 0x10
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
push str.Unsupported_response_code_in_HTTP_response
push esi
call fcn.004af760
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
push str.Unsupported_HTTP_1_subversion_in_response
push esi
call fcn.004af760
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
pop edi
pop esi
pop ebp
mov byte [ebx + 0xba], 0
xor eax, eax
pop ebx
add esp, 0x1c
ret
mov eax, str.Header_without_colon
push eax
push esi
call fcn.004af760
add esp, 8
mov eax, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov eax, str.Nul_byte_in_header
push eax
push esi
call fcn.004af760
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 8
pop ebx
add esp, 0x1c
ret
push str.Maximum_file_size_exceeded
push esi
call fcn.004af760
add esp, 8
mov eax, 0x3f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov edi, 0x1b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
cmp byte [esi + 0x14c], 0
mov edi, dword [esp + 0x3c]
jne 0x4c023c
mov eax, dword [ebp + 0x1e8]
test dword [eax + 0x44], 0x40000
je 0x4c023f
cmp dword [esi + 0x660], 2
jne 0x4c023f
cmp dword [ebx + 4], 0xffffffff
jg 0x4c023f
jl 0x4c023c
cmp dword [ebx], 0xffffffff
ja 0x4c023f
mov byte [edi], 1
cmp dword [ebx + 8], 0
jne 0x4c0260
cmp dword [ebx + 0xc], 0
jne 0x4c0260
push 0
push ebp
push esi
call fcn.004c5b00
add esp, 0xc
test al, al
jne 0x4c0260
mov byte [edi], 1
jmp 0x4c0265
cmp byte [edi], 0
je 0x4c0269
and dword [ebx + 0x5c], 0xfffffffe
push dword [esp + 0x28]
push dword [esp + 0x18]
push 1
push esi
call fcn.004af6c0
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
push edi
push str.The_requested_URL_returned_error:__d
push esi
call fcn.004af760
add esp, 0xc
mov eax, 0x16
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret