Function at 0x46ea63
Capabilities:
Terminate process

Disassembly:
sub esp, 0x10
push ebx
push ebp
push esi
push edi
push 3
push 0x761e04
push edx
xor esi, esi
xor edx, edx
and dword [esp + 0x1c], esi
xor ebp, ebp
call fcn.0046dd77
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x1c], ebx
mov ecx, dword [ebx]
push 2
pop edi
mov eax, dword [ecx + 4]
sub eax, edi
je 0x46eb15
sub eax, 1
je 0x46eae5
sub eax, 1
je 0x46eac7
sub eax, 1
jne 0x46eb42
push 5
push 0x761e28
push dword [ecx]
call fcn.005c9c50
add esp, 0xc
test eax, eax
je 0x46eb11
push 5
push str.HTTPS
jmp 0x46eb01
push 4
push 0x761e18
push dword [ecx]
call fcn.005c9c50
add esp, 0xc
test eax, eax
je 0x46eb3f
push 4
push str.HTTP
jmp 0x46eb2f
push 3
push 0x761e10
push dword [ecx]
call fcn.005c9c50
add esp, 0xc
test eax, eax
je 0x46eb11
push 3
push 0x761e14
mov eax, dword [ebx]
push dword [eax]
call fcn.005c9c50
add esp, 0xc
test eax, eax
jne 0x46eb42
mov ebp, edi
jmp 0x46eb42
push edi
push 0x761e08
push dword [ecx]
call fcn.005c9c50
add esp, 0xc
test eax, eax
je 0x46eb3f
push edi
push 0x761e0c
mov eax, dword [ebx]
push dword [eax]
call fcn.005c9c50
add esp, 0xc
test eax, eax
jne 0x46eb42
xor ebp, ebp
inc ebp
mov eax, dword [ebx + 4]
xor edx, edx
push 1
push 0x761e38
mov edi, dword [eax + 4]
mov ecx, dword [eax]
push edi
mov dword [esp + 0x24], ecx
call fcn.0046dd77
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x14], ebx
mov eax, dword [ebx]
sub edi, dword [eax + 4]
cmp dword [esp + 0x2c], esi
je 0x46ebc3
push 0x15ce
push 0x761e3c
lea eax, [edi + 2]
push 1
push eax
call fcn.005ce020
mov ecx, eax
add esp, 0x10
mov eax, dword [esp + 0x2c]
mov dword [eax], ecx
test ecx, ecx
je 0x46ee8d
test edi, edi
jne 0x46eba4
mov word [ecx], 0x2f
jmp 0x46ebc3
mov eax, dword [ebx]
lea edx, [edi + 2]
push edi
mov eax, dword [eax + 4]
add eax, dword [esp + 0x1c]
push eax
call section..text
mov eax, dword [esp + 0x34]
pop ecx
pop ecx
mov eax, dword [eax]
mov byte [edi + eax], 0
mov ecx, dword [ebx]
xor edx, edx
push 1
push 0x761eb4
push dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.0046dd77
mov edi, eax
add esp, 0xc
cmp dword [edi + 8], 1
je 0x46ebf2
mov eax, dword [edi + 4]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
cmp byte [eax + ecx - 1], 0x5d
jne 0x46ec0c
push 0x50
cmp ebp, 2
mov ecx, 0x1bb
pop eax
cmove eax, ecx
movzx ebx, ax
mov dword [esp + 0x2c], ebx
jmp 0x46ec8c
push 0x15eb
push 0x761eb8
lea eax, [ecx + 1]
push 1
push eax
call fcn.005ce020
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x46ec59
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfe
mov edi, 0x15eb
push esi
push edi
mov edx, 0x761ed4
xor ecx, ecx
call fcn.0047145c
push edi
push 0x761ef0
push 0x761f0c
jmp 0x46eeb7
mov eax, dword [edi + 4]
mov ecx, ebx
mov edx, dword [eax + 4]
push edx
push dword [eax]
inc edx
call section..text
mov eax, dword [edi + 4]
push ebx
mov eax, dword [eax + 4]
mov byte [ebx + eax], 0
call fcn.005cfd10
movzx eax, ax
push 1
push ebx
mov dword [esp + 0x40], eax
call fcn.005cdee0
add esp, 0x14
mov ebx, dword [edi]
mov eax, dword [ebx]
cmp byte [eax], 0x5b
jne 0x46ed26
mov ecx, dword [esp + 0x14]
push 1
push 0x761f30
mov ecx, dword [ecx]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.00470a09
mov ebx, eax
pop ecx
pop ecx
test ebx, ebx
jle 0x46ed8f
push 0x15fa
push 0x761f34
lea eax, [ebx + 2]
push 1
push eax
call fcn.005ce020
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x46ed09
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfe
mov edi, 0x15fa
push esi
push edi
mov edx, 0x761f50
xor ecx, ecx
call fcn.0047145c
push edi
push 0x761f6c
push 0x761f88
jmp 0x46eeb7
lea eax, [ebx + 1]
mov ecx, esi
push eax
mov dword [esp + 0x14], eax
lea edx, [ebx + 2]
mov eax, dword [edi]
push dword [eax]
call section..text
mov byte [ebx + esi + 1], 0
jmp 0x46ed8d
mov ebx, dword [ebx + 4]
push 0x1604
push 0x761fac
push 1
lea eax, [ebx + 1]
mov dword [esp + 0x1c], ebx
push eax
call fcn.005ce020
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x46ed7a
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfe
mov edi, 0x1604
push esi
push edi
mov edx, 0x761fc8
xor ecx, ecx
call fcn.0047145c
push edi
push 0x761fe4
push 0x762000
jmp 0x46eeb7
mov eax, dword [edi]
lea edx, [ebx + 1]
push ebx
mov ecx, esi
push dword [eax]
call section..text
mov byte [ebx + esi], 0
pop ecx
pop ecx
mov ecx, edi
call fcn.0046df18
mov ecx, dword [esp + 0x14]
call fcn.0046df18
mov ecx, dword [esp + 0x1c]
call fcn.0046df18
mov ebx, dword [esp + 0x30]
test ebx, ebx
je 0x46ee5a
push 7
xor eax, eax
mov edi, ebx
pop ecx
rep stosd dword es:[edi], eax
test esi, esi
je 0x46ee5a
cmp byte [esi], 0x5b
jne 0x46ee28
mov edi, dword [esp + 0x10]
mov edx, edi
push ecx
push 0x762024
mov ecx, esi
call fcn.00470a43
mov byte [edi + esi - 1], 0
pop ecx
pop ecx
test eax, eax
jle 0x46edfa
mov byte [eax + esi], 0
inc eax
add eax, esi
push eax
call fcn.005cfd10
pop ecx
mov edi, eax
jmp 0x46edfd
or edi, 0xffffffff
push 0x17
pop ecx
lea eax, [ebx + 8]
mov word [ebx], cx
push eax
lea edx, [esi + 1]
call fcn.00471189
pop ecx
test edi, edi
js 0x46ee17
mov dword [ebx + 0x18], edi
mov edi, dword [esp + 0x2c]
push edi
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebx + 2], ax
jmp 0x46ee5e
push 2
pop ecx
lea eax, [ebx + 4]
mov word [ebx], cx
push eax
mov edx, esi
call fcn.00471189
mov edi, dword [esp + 0x30]
pop ecx
test eax, eax
jne 0x46ee1b
push ecx
push ebx
mov edx, edi
mov ecx, esi
call fcn.004713ce
pop ecx
pop ecx
test eax, eax
jg 0x46ee1b
xor eax, eax
mov word [ebx], ax
jmp 0x46ee1b
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
test eax, eax
je 0x46ee69
mov word [eax], di
mov eax, dword [esp + 0x24]
test eax, eax
je 0x46ee75
mov dword [eax], esi
jmp 0x46ee83
test esi, esi
je 0x46ee83
push 1
push esi
call fcn.005cdee0
pop ecx
pop ecx
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x10
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov esi, 0xfe
mov edi, 0x15ce
push esi
push edi
mov edx, 0x761e58
xor ecx, ecx
call fcn.0047145c
push edi
push 0x761e74
push 0x761e90
call fcn.004010b4
add esp, 0x18
push esi
call fcn.005aae60
int3