Function at 0x439a00
Capabilities:
Resolve function by parsing pe exports
Set registry value

Disassembly:
push 0xffffffffffffffff
push 0x5202eb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb8
mov eax, dword [0x565e78]
push ebx
mov ebx, dword [esp + 0xcc]
push ebp
push esi
push edi
mov edi, dword [ebx + 0x1acc]
xor ebp, ebp
mov dword [esp + 0xc4], eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebp
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x439f15
mov edx, dword [eax + 8]
sub edx, ecx
mov eax, 0x4ec4ec4f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [esp + 0x1c], eax
jae 0x439f15
cmp byte [ecx + ebp + 0x40], 0x30
jne 0x439f09
mov eax, dword [0x56bae8]
cmp eax, dword [0x56baec]
je 0x439ab1
lea esp, [esp]
mov edx, dword [eax]
cmp dword [ecx + ebp + 0x44], edx
mov esi, dword [eax + 4]
jne 0x439aa4
cmp dword [ecx + ebp], esi
je 0x439f09
mov edx, dword [0x56baec]
add eax, 8
cmp eax, edx
jne 0x439a90
mov eax, dword [ecx + ebp + 0x64]
xor esi, esi
cmp eax, esi
jne 0x439f09
cmp dword [ecx + ebp], esi
je 0x439f09
cmp dword [ecx + ebp + 0x20], 1
je 0x439f09
mov dword [esp + 0x10], esi
jmp 0x439ae0
mov ecx, dword [ebx + 0x190]
test ecx, ecx
je 0x439c4b
mov eax, dword [ebx + 0x194]
sub eax, ecx
mov ecx, dword [esp + 0x10]
sar eax, 4
cmp ecx, eax
jae 0x439c4b
mov eax, dword [ebx + 0x190]
mov eax, dword [esi + eax]
push eax
mov eax, dword [edi + 0x1c]
push 3
push 0x110a
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push eax
mov ecx, edi
call fcn.004f4a5f
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0x190]
mov ecx, dword [esi + eax]
push ecx
mov ecx, edi
call fcn.004f4a5f
mov edx, dword [esp + 0xdc]
mov dword [esp + 0x14], eax
mov eax, dword [edx + 4]
lea edi, [eax + ebp]
lea eax, [esp + 0x5c]
push eax
call fcn.00439f40
mov ecx, dword [esp + 0xdc]
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0x28]
mov edx, dword [eax + ebp + 0x44]
cmp edx, dword [ecx]
jne 0x439b7e
mov edx, dword [eax + ebp + 0x20]
mov eax, dword [esp + 0x14]
cmp edx, dword [eax]
je 0x439c24
cmp dword [esp + 0xbc], 0x10
jb 0x439b98
mov ecx, dword [esp + 0xa8]
push ecx
call fcn.004fa776
add esp, 4
mov eax, dword [esp + 0x98]
xor edi, edi
cmp eax, 0x10
mov dword [esp + 0xbc], 0xf
mov dword [esp + 0xb8], edi
mov byte [esp + 0xa8], 0
jb 0x439bd0
mov edx, dword [esp + 0x84]
push edx
call fcn.004fa776
add esp, 4
cmp dword [esp + 0x78], 0x10
mov dword [esp + 0x98], 0xf
mov dword [esp + 0x94], edi
mov byte [esp + 0x84], 0
jb 0x439bfe
mov eax, dword [esp + 0x64]
push eax
call fcn.004fa776
add esp, 4
mov ecx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x74], edi
mov edi, dword [esp + 0x18]
mov dword [esp + 0x78], 0xf
mov byte [esp + 0x64], 0
mov dword [esp + 0x10], ecx
add esi, 0x10
jmp 0x439ae0
mov eax, dword [esp + 0x10]
mov ecx, dword [ebx + 0x190]
shl eax, 4
mov edi, dword [eax + ecx]
add eax, ecx
lea esi, [esp + 0x5c]
mov dword [esp + 0x14], edi
call fcn.00414270
test edi, edi
mov edi, dword [esp + 0x18]
jne 0x439cba
xor esi, esi
mov dword [esp + 0x10], esi
mov ecx, dword [ebx + 0x180]
test ecx, ecx
je 0x439f09
mov eax, dword [ebx + 0x184]
sub eax, ecx
sar eax, 4
cmp esi, eax
jae 0x439f09
mov eax, ecx
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + eax]
push edx
mov ecx, edi
call fcn.004f4a5f
mov ecx, dword [esp + 0xdc]
mov ecx, dword [ecx + 4]
mov edx, dword [ecx + ebp + 0x44]
cmp edx, dword [eax]
je 0x439ca3
mov eax, dword [esp + 0x10]
inc esi
add eax, 0x10
mov dword [esp + 0x10], eax
jmp 0x439c51
mov eax, dword [ebx + 0x180]
shl esi, 4
add esi, eax
mov esi, dword [esi]
test esi, esi
je 0x439f09
jmp 0x439cbe
mov esi, dword [esp + 0x14]
mov edx, dword [ebx + 0x1acc]
mov eax, dword [esp + 0xdc]
mov eax, dword [eax + 4]
push edx
lea ecx, [eax + ebp]
push ebx
call fcn.00439ff0
mov ecx, dword [esp + 0xdc]
mov ecx, dword [ecx + 4]
cmp dword [ecx + ebp + 0x1c], 0x10
jb 0x439cef
mov ecx, dword [ecx + ebp + 8]
jmp 0x439cf3
lea ecx, [ecx + ebp + 8]
push 0xffff0002
push esi
xor esi, esi
push esi
push esi
push esi
push eax
push eax
push ecx
push 0x23
mov ecx, edi
call fcn.004f4b09
cmp eax, esi
mov dword [esp + 0x14], eax
je 0x439f09
push 0x68
call fcn.004fa746
add esp, 4
cmp eax, esi
je 0x439d4b
mov dword [eax + 0x18], esi
mov ecx, 0xf
mov dword [eax + 0x1c], ecx
mov byte [eax + 8], 0
mov dword [eax + 0x3c], ecx
mov dword [eax + 0x38], esi
mov byte [eax + 0x28], 0
mov dword [eax + 0x60], ecx
mov dword [eax + 0x5c], esi
mov byte [eax + 0x4c], 0
mov ebx, eax
jmp 0x439d4d
xor ebx, ebx
mov edx, dword [esp + 0xdc]
mov esi, dword [edx + 4]
mov eax, dword [esi + ebp]
push 0xffffffffffffffff
push 0
lea ecx, [esi + ebp + 4]
push ecx
lea ecx, [ebx + 4]
mov dword [ebx], eax
call fcn.004018b0
mov edx, dword [esi + ebp + 0x20]
push 0xffffffffffffffff
push 0
lea eax, [esi + ebp + 0x24]
push eax
lea ecx, [ebx + 0x24]
mov dword [ebx + 0x20], edx
call fcn.004018b0
mov cl, byte [esi + ebp + 0x40]
push 0xffffffffffffffff
mov byte [ebx + 0x40], cl
mov edx, dword [esi + ebp + 0x44]
push 0
lea eax, [esi + ebp + 0x48]
push eax
lea ecx, [ebx + 0x48]
mov dword [ebx + 0x44], edx
call fcn.004018b0
mov ecx, dword [esi + ebp + 0x64]
mov esi, dword [esp + 0x14]
push ebx
push 0
push 0
push 0
push 0
push 0
push 4
mov dword [ebx + 0x64], ecx
mov ecx, dword [esp + 0x34]
push esi
call fcn.004f4abb
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0xd8]
mov eax, dword [esi + 0x1a0]
add esi, 0x19c
xor edx, edx
test eax, eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x38], edx
je 0x439df7
mov edx, dword [esi + 8]
sub edx, eax
sar edx, 4
test eax, eax
je 0x439e2a
mov ecx, dword [esi + 0xc]
sub ecx, eax
sar ecx, 4
cmp edx, ecx
jae 0x439e2a
mov eax, dword [esp + 0x20]
mov edi, dword [esi + 8]
push eax
lea edx, [esp + 0x30]
mov ecx, 1
mov eax, edi
call fcn.00467af0
add esp, 4
add edi, 0x10
mov dword [esi + 8], edi
jmp 0x439e3f
mov eax, dword [esi + 8]
lea ecx, [esp + 0x2c]
push ecx
push eax
mov ecx, 1
mov edx, esi
call fcn.004580b0
mov edx, dword [esp + 0xdc]
mov eax, dword [edx + 4]
lea eax, [eax + ebp + 0x48]
push eax
mov edi, str..exe
lea esi, [esp + 0x44]
call fcn.004078a0
add esp, 4
xor esi, esi
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x28]
push edx
push esi
push 0x20006
push esi
push esi
push esi
push str.SOFTWAREMicrosoftInternet_ExplorerMainFeatureControlFEATURE_BLOCK_LMZ_SCRIPT
mov dword [esp + 0xf0], esi
push getpeername
mov dword [esp + 0x44], esi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
cmp dword [esp + 0x58], 0x10
mov eax, dword [esp + 0x44]
jae 0x439e9e
lea eax, [esp + 0x44]
mov edx, dword [esp + 0x24]
push 4
lea ecx, [esp + 0x24]
push ecx
push 4
push esi
push eax
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [esp + 0x24]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, ebx
mov ebx, dword [esp + 0xd8]
call fcn.0044e250
mov dword [esp + 0xd0], 0xffffffff
cmp dword [esp + 0x58], 0x10
jb 0x439eec
mov ecx, dword [esp + 0x44]
push ecx
call fcn.004fa776
add esp, 4
mov ebx, dword [esp + 0xd8]
mov edi, dword [esp + 0x18]
xor eax, eax
mov dword [esp + 0x58], 0xf
mov dword [esp + 0x54], eax
mov byte [esp + 0x44], al
inc dword [esp + 0x1c]
add ebp, 0x68
jmp 0x439a42
mov ecx, dword [esp + 0xc8]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
mov ecx, dword [esp + 0xb8]
pop ebx
call fcn.004b6cac
add esp, 0xc4
ret 8