Function at 0x49c680
Capabilities:
Access peb ldr_data
Encode data using xor
Link many functions at runtime
Reference http user-agent string

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52c73c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x78
mov eax, ecx
xorps xmm0, xmm0
lea ecx, [eax + 0xc]
mov dword [ebp - 0x68], eax
movups xmmword [ecx], xmm0
push esi
xor edx, edx
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push edi
mov word [ecx], dx
mov dword [ebp - 4], edx
movups xmmword [eax + 0x30], xmm0
mov dword [eax + 0x40], edx
mov dword [eax + 0x44], 7
mov word [eax + 0x30], dx
movups xmmword [eax + 0x48], xmm0
mov dword [eax + 0x58], edx
mov dword [eax + 0x5c], 7
mov word [eax + 0x48], dx
movups xmmword [eax + 0x60], xmm0
mov dword [eax + 0x70], edx
mov dword [eax + 0x74], 0xf
mov byte [eax + 0x60], dl
movups xmmword [eax + 0x78], xmm0
mov dword [eax + 0x88], edx
mov dword [eax + 0x8c], 0xf
mov byte [eax + 0x78], dl
push 0x6f
push str.Mozilla_5.0__Windows_NT_10.0__Win64__x64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_119.0.0.0_Safari_537.36
mov byte [ebp - 4], 4
call fcn.00485490
cmp byte [0x55d648], 0
jne 0x49cee5
movaps xmm0, xmmword [0x548450]
xor ecx, ecx
mov dword [ebp - 0x34], 0xc2c7c1d0
mov byte [ebp - 0x30], 0xdf
movups xmmword [ebp - 0x2f], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 0xb
jb 0x49c756
mov dword [0x55d530], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x34]
mov byte [ebp - 0x29], 0
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x70], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x6c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49c788
sub ecx, edx
lea eax, [ebp - 0x34]
push ecx
push eax
lea ecx, [ebp - 0x80]
call fcn.00402b80
cmp dword [ebp - 0x6c], 0x10
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, dword [ebp - 0x6c]
mov edi, eax
cmp ecx, 0x10
jb 0x49c7e6
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49c7dc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cefb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x5473d0]
xor ecx, ecx
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
mov dword [ebp - 0x59], 0xc2e7e1d0
mov dword [ebp - 0x55], 0xcdfdf8ff
movups xmmword [ebp - 0x51], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x59], al
inc ecx
cmp ecx, 0xe
jb 0x49c813
mov dword [0x55d524], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x59]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49c845
sub ecx, edx
lea eax, [ebp - 0x59]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf68], eax
cmp ecx, 0x10
jb 0x49c8a9
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49c89f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf00
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x5498e0]
xor ecx, ecx
movups xmmword [ebp - 0x5e], xmm0
mov word [ebp - 0x4e], 0xeaf2
xorps xmm0, xmm0
mov byte [ebp - 0x4c], 0xea
movq qword [ebp - 0x4b], xmm0
mov word [ebp - 0x43], 0
nop
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x5e], al
inc ecx
cmp ecx, 0x13
jb 0x49c8d0
mov dword [0x55d5a8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x5e]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49c902
sub ecx, edx
lea eax, [ebp - 0x5e]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf6c], eax
cmp ecx, 0x10
jb 0x49c960
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49c956
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf05
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x548590]
xor ecx, ecx
mov dword [ebp - 0x56], 0xc2e7e1d0
mov byte [ebp - 0x52], 0xff
movups xmmword [ebp - 0x51], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x56], al
inc ecx
cmp ecx, 0xb
jb 0x49c978
mov dword [0x55d530], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x56]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49c9b0
sub ecx, edx
lea eax, [ebp - 0x56]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf54], eax
cmp ecx, 0x10
jb 0x49ca0e
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49ca04
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf0a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549930]
xor ecx, ecx
movups xmmword [ebp - 0x5d], xmm0
mov word [ebp - 0x4d], 0xece4
xorps xmm0, xmm0
mov word [ebp - 0x43], 0
movq qword [ebp - 0x4b], xmm0
nop
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x5d], al
inc ecx
cmp ecx, 0x12
jb 0x49ca30
mov dword [0x55d5dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x5d]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49ca62
sub ecx, edx
lea eax, [ebp - 0x5d]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf70], eax
cmp ecx, 0x10
jb 0x49cac0
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49cab6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf0f
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549c20]
xor ecx, ecx
movups xmmword [ebp - 0x64], xmm0
mov word [ebp - 0x54], 0xeed6
movaps xmm0, xmmword [0x548280]
mov byte [ebp - 0x52], 0xf8
movups xmmword [ebp - 0x51], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 0x19
jb 0x49cae2
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x64]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49cb14
sub ecx, edx
lea eax, [ebp - 0x64]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf74], eax
cmp ecx, 0x10
jb 0x49cb72
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49cb68
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf14
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549920]
xor ecx, ecx
movups xmmword [ebp - 0x5d], xmm0
mov word [ebp - 0x4d], 0xece4
xorps xmm0, xmm0
mov word [ebp - 0x43], 0
movq qword [ebp - 0x4b], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x5d], al
inc ecx
cmp ecx, 0x12
jb 0x49cb93
mov dword [0x55d5dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x5d]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49cbc5
sub ecx, edx
lea eax, [ebp - 0x5d]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf50], eax
cmp ecx, 0x10
jb 0x49cc23
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49cc19
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf19
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549910]
xor ecx, ecx
movups xmmword [ebp - 0x61], xmm0
movaps xmm0, xmmword [0x548220]
movups xmmword [ebp - 0x51], xmm0
nop dword [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x61], al
inc ecx
cmp ecx, 0x16
jb 0x49cc40
mov dword [0x55d574], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x61]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49cc72
sub ecx, edx
lea eax, [ebp - 0x61]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf60], eax
cmp ecx, 0x10
jb 0x49ccd0
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49ccc6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf1e
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x547fd0]
xor ecx, ecx
mov dword [ebp - 0x5a], 0xc2e7e1d0
mov dword [ebp - 0x56], 0xdcfdf8ff
mov byte [ebp - 0x52], 0xea
movups xmmword [ebp - 0x51], xmm0
nop
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x5a], al
inc ecx
cmp ecx, 0xf
jb 0x49ccf0
mov dword [0x55d558], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x5a]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49cd22
sub ecx, edx
lea eax, [ebp - 0x5a]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf64], eax
cmp ecx, 0x10
jb 0x49cd80
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49cd76
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf23
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549900]
xor ecx, ecx
movups xmmword [ebp - 0x5d], xmm0
mov word [ebp - 0x4d], 0xfdfb
xorps xmm0, xmm0
mov word [ebp - 0x43], 0
movq qword [ebp - 0x4b], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x5d], al
inc ecx
cmp ecx, 0x12
jb 0x49cda1
mov dword [0x55d5dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x5d]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49cdd3
sub ecx, edx
lea eax, [ebp - 0x5d]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf5c], eax
cmp ecx, 0x10
jb 0x49ce31
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49ce27
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf28
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549560]
xor ecx, ecx
movups xmmword [ebp - 0x5d], xmm0
mov word [ebp - 0x4d], 0xebe3
xorps xmm0, xmm0
mov word [ebp - 0x43], 0
movq qword [ebp - 0x4b], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x5d], al
inc ecx
cmp ecx, 0x12
jb 0x49ce52
mov dword [0x55d5dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x5d]
mov byte [ebp - 0x4b], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49ce84
sub ecx, edx
lea eax, [ebp - 0x5d]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402b80
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x18]
mov dword [0x55cf58], eax
cmp ecx, 0x10
jb 0x49cede
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49ced4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49cf2d
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [0x55d648], 1
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
int3