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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov esi, esp
mov dword [esi + 0x70], ebp
mov dword [esi + 0x20], ecx
mov dword [esi + 0x74], esp
mov dword [esi + 0x80], 0xffffffff
lea eax, [esi + 0x78]
mov dword [esi + 0x7c], 0x588800
mov ecx, dword fs:[0]
mov dword [esi + 0x78], ecx
mov dword fs:[0], eax
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
cmp dword [0x5c508c], 0xa
setl al
or al, cl
mov byte [esi + 0x10], al
nop word cs:[eax + eax]
push eax
sub esp, 0x14
mov dword [esi + 0x14], esp
sub esp, 0x18
mov dword [esi + 0x1c], esp
sub esp, 0x38
mov dword [esi], esp
sub esp, 0x18
mov dword [esi + 8], esp
sub esp, 0x18
mov dword [esi + 0xc], esp
sub esp, 0x18
mov dword [esi + 0x24], esp
sub esp, 0x18
mov dword [esi + 0x34], esp
sub esp, 0x18
mov dword [esi + 0x18], esp
sub esp, 0x18
mov edx, esp
sub esp, 0x18
mov edi, esp
sub esp, 0x18
mov ecx, esp
sub esp, 0x248
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
push eax
sub esp, 0x14
mov eax, esp
cmp byte [esi + 0x10], 0
je 0x4af530
mov dword [esi + 4], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x30], ebx
mov dword [esi + 0x2c], edi
mov dword [esi + 0x10], edx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x188], 0
je 0x4af6e2
mov dword [esi + 0x80], 0xffffffff
mov edi, dword [esi + 0x1c]
mov ecx, edi
push str.location
call fcn.00414560
mov ecx, dword [0x5c5088]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5c508c], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x4af635
or cl, al
test cl, 1
je 0x4af635
nop dword [eax]
mov ecx, edi
push str.location
call fcn.00414560
mov ecx, edi
push str.location
call fcn.00414560
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x5c508c], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x4af635
or cl, al
jne 0x4af5f0
mov eax, dword [ebp + 0xc]
add eax, 0x34
mov dword [esi + 0x80], 0
push 0x5b307c
push 0
push edi
push eax
call fcn.004e6cb0
add esp, 0x10
mov ecx, dword [esi + 0x14]
push eax
call fcn.00414560
mov edi, dword [esi + 0x14]
mov ecx, dword [esi + 0x1c]
call fcn.0040ae90
cmp dword [edi + 0x10], 0
je 0x4af762
mov eax, dword [0x5c3e24]
mov ecx, dword [0x5ca520]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x4af9be
mov dword [esi + 0x80], 1
mov ecx, dword [esi]
call fcn.004562a0
mov ecx, dword [0x5c5088]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5c508c], 0xa
setge cl
setl ch
xor ch, dl
jne 0x4af7b7
or cl, al
test cl, 1
je 0x4af7b7
nop word [eax + eax]
jmp 0x4af6e0
mov edi, dword [ebp + 0x10]
mov dword [edi], 6
mov ecx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edx, [ecx + 1]
imul edx, ecx
mov dword [esi + 0x10], edx
test dl, 1
sete byte [esi + 0x14]
cmp eax, 0xa
setl byte [esi + 0x1c]
setge byte [esi]
xor ebx, ebx
movzx edx, byte [esi + 0x1c]
cmp dl, byte [esi + 0x14]
jne 0x4af776
movzx edx, byte [esi]
or dl, byte [esi + 0x10]
test dl, 1
je 0x4af776
xor ebx, ebx
nop dword [eax + eax]
mov dword [edi], 6
mov ecx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x4af776
xor dh, dl
je 0x4af730
jmp 0x4af776
mov ecx, edi
xor ebx, ebx
call fcn.0040ae90
mov ecx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
cmp eax, 0xa
setge al
setl ah
xor ah, cl
jne 0x4af7a2
or al, dl
test al, 1
je 0x4af7a2
nop word cs:[eax + eax]
jmp 0x4af7a0
mov eax, dword [esi + 0x78]
mov dword fs:[0], eax
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc
mov dword [esi + 0x80], 2
push 0
push 0x5c3e10
push dword [esi]
push dword [esi + 0x14]
call fcn.00456440
add esp, 0x10
mov ecx, dword [0x5c5088]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x5c508c], 0xa
setl dl
test dl, cl
jne 0x4af802
xor dl, cl
jne 0x4af802
nop
jmp 0x4af800
test al, al
je 0x4af8c2
mov ecx, dword [esi + 0x20]
mov eax, dword [ecx]
call dword [eax + 0x14]
mov ecx, str.https
mov edx, str.http
test al, al
cmovne edx, ecx
mov dword [esi + 0x1c], edx
mov ecx, dword [esi]
push 1
call fcn.00456790
lea edx, [esi + 0x3c]
mov ecx, eax
push edx
call fcn.004933f0
lea eax, [esi + 0x54]
mov ecx, dword [esi + 8]
push eax
push dword [esi + 0x40]
push dword [esi + 0x3c]
call fcn.00493620
mov ecx, dword [esi]
push 2
call fcn.00456790
mov ecx, eax
lea eax, [esi + 0x3c]
push eax
call fcn.004933f0
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x40]
mov dword [esi + 0x80], 3
mov ecx, dword [esi + 0xc]
lea edi, [esi + 0x54]
push edi
push edx
push eax
call fcn.00493620
mov eax, dword [esi + 0xc]
cmp dword [eax + 0x10], 0
lea ebx, [esi + 0x3c]
jne 0x4afab3
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5c508c], 0xa
setl cl
test cl, al
mov edi, dword [esi]
jne 0x4afa3b
xor cl, al
je 0x4afa6c
jmp 0x4afa3b
xor ebx, ebx
mov eax, dword [esi]
add eax, 8
mov dword [esi], eax
mov eax, dword [0x5c41d8]
mov ecx, dword [0x5c41dc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x54]
cmp ecx, 0xa
setl byte [esi + 0x3c]
mov eax, 0x45d616c1
nop word cs:[eax + eax]
cmp eax, 0x458fba33
jg 0x4af930
cmp eax, 0x8b4de646
je 0x4af9b6
cmp eax, 0xa9a93be9
jne 0x4af900
mov ecx, dword [esi]
call fcn.0047b270
mov eax, 0x458fba34
jmp 0x4af900
cmp eax, 0x458fba34
je 0x4af96a
cmp eax, 0x45d616c1
jne 0x4af900
movzx ecx, byte [esi + 0x54]
movzx eax, byte [esi + 0x3c]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xa9a93be9
mov edi, 0x458fba34
cmovne eax, edi
test cl, cl
mov ecx, 0xa9a93be9
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x4af900
mov ecx, dword [esi]
call fcn.0047b270
mov edx, dword [0x5c41d8]
mov ecx, dword [0x5c41dc]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xa9a93be9
mov edi, 0x8b4de646
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4af900
mov ecx, dword [esi + 0x14]
jmp 0x4af766
push 0x5c3e24
call fcn.005892e3
add esp, 4
cmp dword [0x5c3e24], 0xffffffff
jne 0x4af695
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5c508c], 0xa
setl cl
test cl, al
jne 0x4afa01
xor cl, al
jne 0x4afa01
jmp 0x4af9ff
mov dword [esi + 0x80], 0xc
mov ecx, 0x5c3e10
push 1
push str.__:_https__:____:____:___d:_____:_______::_d__________________:.__
call fcn.004560f0
push 0x4f0fb0
call fcn.005894ab
add esp, 4
push 0x5c3e24
call fcn.0058935d
add esp, 4
jmp 0x4af695
mov ecx, edi
push 3
call fcn.00456790
mov ecx, dword [0x5c5088]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5c508c], 0xa
setl dl
test dl, cl
jne 0x4afa77
xor dl, cl
jne 0x4afa77
mov ecx, edi
push 3
call fcn.00456790
jmp 0x4afa3b
mov ecx, eax
push ebx
call fcn.004933f0
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x40]
mov dword [esi + 0x80], 4
mov ecx, dword [esi + 0x24]
lea edi, [esi + 0x54]
push edi
push edx
push eax
call fcn.00493620
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 0x24]
push edi
call fcn.00420690
mov ecx, edi
call fcn.0040ae90
lea ebx, [esi + 0x3c]
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5c508c], 0xa
setl cl
test cl, al
mov edi, dword [esi]
jne 0x4afadd
xor cl, al
je 0x4afb0e
mov ecx, edi
push 4
call fcn.00456790
mov ecx, dword [0x5c5088]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5c508c], 0xa
setl dl
test dl, cl
jne 0x4afb19
xor dl, cl
jne 0x4afb19
mov ecx, edi
push 4
call fcn.00456790
jmp 0x4afadd
mov ecx, eax
push ebx
call fcn.004933f0
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x40]
mov dword [esi + 0x80], 4
mov ecx, dword [esi + 0x34]
lea edi, [esi + 0x54]
push edi
push edx
push eax
call fcn.00493620
mov ecx, dword [esi]
push 5
call fcn.00456790
mov ecx, eax
lea eax, [esi + 0x3c]
push eax
call fcn.004933f0
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x40]
mov dword [esi + 0x80], 5
mov ecx, dword [esi + 0x18]
lea edi, [esi + 0x54]
push edi
push edx
push eax
call fcn.00493620
mov ecx, dword [esi]
push 6
call fcn.00456790
mov ecx, eax
lea eax, [esi + 0x3c]
push eax
call fcn.004933f0
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x40]
mov dword [esi + 0x80], 6
mov ecx, dword [esi + 0x10]
lea edi, [esi + 0x54]
push edi
push edx
push eax
call fcn.00493620
mov eax, dword [esi + 0x34]
cmp dword [eax + 0x10], 0
je 0x4afc62
mov dword [esi + 0x80], 7
push 0xa
push 0
push eax
call fcn.00456e70
add esp, 0xc
mov dword [esi + 0x24], eax
mov ebx, dword [esi + 4]
mov ecx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
mov edi, dword [esi + 8]
test ecx, ecx
sete cl
cmp eax, 0xa
setl al
test al, cl
jne 0x4afc02
xor al, cl
jne 0x4afc02
nop dword [eax + eax]
jmp 0x4afc00
cmp dword [edi + 0x10], 0
jne 0x4afc20
mov dword [esi + 0x80], 7
mov ecx, dword [esi + 8]
push dword [esi + 0x1c]
call fcn.004a0a90
mov ebx, dword [esi + 4]
mov ecx, dword [esi + 0xc]
cmp dword [ecx + 0x10], 0
je 0x4afcf2
mov ecx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
and edi, edx
mov ecx, dword [esi + 0x18]
test edi, edi
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x4afc92
xor dh, dl
jne 0x4afc92
nop dword [eax + eax]
jmp 0x4afc60
mov edi, dword [esi + 8]
cmp dword [edi + 0x10], 0
je 0x4afd42
mov ecx, edi
push str.https
call fcn.00493900
test al, al
mov eax, 0x1bb
mov ecx, 0x50
cmovne ecx, eax
mov dword [esi + 0x24], ecx
jmp 0x4afd4b
cmp dword [ecx + 0x10], 0
jne 0x4afcc6
mov dword [esi + 0x80], 7
push 0x5b2e2c
call fcn.004a0a90
mov ebx, dword [esi + 4]
mov edx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edi, [edx + 1]
imul edi, edx
and edi, 1
mov ecx, dword [esi + 0x18]
test edi, edi
setne dh
sete dl
cmp eax, 0xa
setge al
setl ah
xor ah, dl
jne 0x4afd9a
or al, dh
je 0x4afd9a
nop word [eax + eax]
jmp 0x4afcf0
mov eax, dword [esi + 0x20]
add eax, 8
mov dword [esi + 0x80], 7
push eax
call fcn.00499a80
mov ebx, dword [esi + 4]
mov edx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edi, [edx + 1]
imul edi, edx
and edi, 1
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x4afc45
xor dh, dl
mov ecx, dword [esi + 0x18]
jne 0x4afc48
nop dword [eax + eax]
jmp 0x4afd40
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 0x20]
mov dword [esi + 0x24], eax
mov ecx, dword [0x5c5088]
mov eax, dword [0x5c508c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete bl
setne dl
cmp eax, 0xa
setl bh
setge dh
cmp bh, bl
jne 0x4afd92
or dh, dl
mov ebx, dword [esi + 4]
je 0x4afbe8
nop word cs:[eax + eax]
jmp 0x4afd90
mov ebx, dword [esi + 4]
jmp 0x4afbe8
mov dword [esi + 0x80], 7
push 1
push ecx
push ebx
call fcn.004e0220
mov ecx, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x80], 0xb
push dword [esi + 0x10]
call fcn.00415d70
mov dword [esi + 0x6c], eax
mov ecx, dword [0x5c3e50]
mov eax, dword [0x5c3e54]
lea edi, [ecx + 1]
imul edi, ecx
mov ebx, edi
xor ebx, 0xfffffffe
test ebx, edi
sete cl
cmp eax, 0xa
setl ch
xor ch, cl
mov edx, 0xdc1d3347
mov ecx, 0x875345b4
cmovne ecx, edx
test ebx, edi
sete byte [esi + 0x2b]
cmovne edx, ecx
cmp eax, 0xa
setl byte [esi + 0x54]
cmovge edx, ecx
mov edi, 0x8c6bde8f
mov ecx, 0x7ef2dca6
jmp 0x4afe36
movzx eax, byte [esi + 0x2b]
mov ah, byte [esi + 0x54]
mov ebx, eax
xor bl, ah
mov ebx, 0x875345b4
cmovne ebx, ecx
test ah, ah
mov edi, ebx
cmovne edi, ecx
test al, al
cmove edi, ebx
mov ebx, dword [esi + 0xc]
cmp edi, 0xdc1d3346
jg 0x4afe53
cmp edi, 0x875345b4
je 0x4afe67
cmp edi, 0x8c6bde8f
jne 0x4afe39
jmp 0x4afe17
cmp edi, 0xdc1d3347
je 0x4afe6e
cmp edi, 0x7ef2dca6
jne 0x4afe39
mov edi, edx
jmp 0x4afe39
mov edi, 0x7ef2dca6
jmp 0x4afe39
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x3c], ecx
mov eax, dword [esi + 0x3c]
vmovsd xmm0, qword [ecx + 0x10]
mov eax, dword [esi + 0x2c]
vmovsd qword [eax + 0x10], xmm0
vmovups xmm0, xmmword [ecx]
vmovups xmmword [eax], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [esi + 4]
call fcn.0040ae90
mov ecx, dword [esi + 8]
push dword [esi + 0x1c]
call fcn.00493900
test al, al
mov edi, dword [esi + 0x14]
je 0x4aff36
mov eax, dword [esi + 0x20]
add eax, 8
mov ecx, ebx
push eax
call fcn.00470700
test al, al
je 0x4aff36
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete dl
cmp dword [0x5c508c], 0xa
setge cl
setl ah
xor ah, dl
jne 0x4aff02
or cl, al
je 0x4aff02
nop word cs:[eax + eax]
jmp 0x4aff00
mov eax, dword [esi + 0x20]
mov ecx, dword [esi + 0x24]
cmp ecx, dword [eax + 0x20]
jne 0x4aff36
mov dword [esi + 0x80], 8
push dword [ebp + 0x10]
push edi
push dword [esi + 0x2c]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [esi + 0x20]
call fcn.004f0fd0
add esp, 0x18
mov ebx, eax
jmp 0x4affe7
mov ecx, dword [esi + 8]
push str.https
call fcn.00493900
test al, al
je 0x4aff4e
xor ebx, ebx
jmp 0x4affe7
mov ecx, ebx
call fcn.0044c120
mov dword [esi + 0x80], 8
mov ecx, dword [esi + 0x38]
push eax
call fcn.00414560
lea edi, [esi + 0x3c]
mov ecx, edi
call fcn.0040ab10
lea ebx, [esi + 0x54]
mov ecx, ebx
call fcn.0040ab10
mov dword [esi + 0x80], 0xa
mov ecx, dword [esi + 0x30]
push edi
push ebx
push dword [esi + 0x24]
push dword [esi + 0x38]
call fcn.004944d0
lea ecx, [esi + 0x54]
call fcn.0040ae90
lea ecx, [esi + 0x3c]
call fcn.0040ae90
mov ecx, dword [esi + 0x38]
call fcn.0040ae90
mov dword [esi + 0x80], 9
mov ecx, dword [esi + 0x30]
push dword [esi + 0x20]
call fcn.004f14a0
push dword [ebp + 0x10]
push dword [esi + 0x14]
push dword [esi + 0x2c]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [esi + 0x30]
call fcn.004f0fd0
add esp, 0x18
mov ebx, eax
mov ecx, dword [esi + 0x30]
call fcn.00497ac0
mov ecx, dword [0x5c5088]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5c508c], 0xa
setl ch
setge cl
cmp ch, dl
mov edi, dword [esi + 0x2c]
jne 0x4b0015
or cl, al
test cl, 1
jne 0x4b0077
jmp 0x4b0015
mov ecx, edi
call fcn.0040ae90
mov ecx, dword [esi + 0x10]
call fcn.0040ae90
mov ecx, dword [esi + 0x18]
call fcn.0040ae90
mov ecx, dword [esi + 0x34]
call fcn.0040ae90
mov ecx, dword [esi + 0xc]
call fcn.0040ae90
mov ecx, dword [esi + 8]
call fcn.0040ae90
mov eax, dword [0x5c5088]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5c508c], 0xa
setl cl
test cl, al
jne 0x4af8c4
xor cl, al
mov edi, dword [esi + 0x2c]
jne 0x4af8c4
mov ecx, edi
call fcn.0040ae90
mov ecx, dword [esi + 0x10]
call fcn.0040ae90
mov ecx, dword [esi + 0x18]
call fcn.0040ae90
mov ecx, dword [esi + 0x34]
call fcn.0040ae90
mov ecx, dword [esi + 0xc]
call fcn.0040ae90
mov ecx, dword [esi + 8]
call fcn.0040ae90
jmp 0x4b0015