Function at 0x414930
Capabilities:
Get hostname

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x473642
mov eax, dword fs:[0]
push eax
sub esp, 0x6a8
mov eax, dword [0x4936d0]
xor eax, esp
mov dword [esp + 0x670], eax
push ebx
push esi
push edi
mov eax, dword [0x4936d0]
xor eax, esp
push eax
lea eax, [esp + 0x6b8]
mov dword fs:[0], eax
mov ebx, ecx
push 0x467
mov dword [esp + 0x44], ebx
call fcn.0042643b
test eax, eax
je 0x4149be
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x280]
push ecx
mov dword [esp + 0x3c], 0xff
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
test eax, eax
je 0x4149be
lea edx, [esp + 0x27c]
push edx
push 0x467
mov ecx, ebx
call fcn.0042643b
mov ecx, eax
call fcn.00426553
push 0x468
mov ecx, ebx
call fcn.0042643b
test eax, eax
je 0x414af9
mov eax, dword [0x4ced18]
mov ecx, dword [0x4ced14]
xor edi, edi
push edi
push eax
push ecx
push 0x398
call fcn.004028c0
cmp eax, edi
je 0x4149fc
push 0xa3
call fcn.00402850
jmp 0x4149fe
xor eax, eax
mov ecx, eax
mov dword [esp + 0x78], 0xf
mov dword [esp + 0x74], edi
mov byte [esp + 0x64], 0
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x414a14
sub ecx, esi
push ecx
push eax
lea ecx, [esp + 0x68]
call fcn.004072b0
push 1
push 0x486110
lea edx, [esp + 0x68]
push edx
xor eax, eax
mov dword [esp + 0x6cc], edi
call fcn.004152d0
mov esi, eax
cmp esi, 0xffffffff
je 0x414a7d
lea esp, [esp]
push 2
push 0x486114
push 1
mov eax, esi
lea edi, [esp + 0x6c]
call fcn.00415100
push 1
push 0x486110
mov ecx, edi
lea eax, [esi + 2]
push ecx
call fcn.004152d0
mov esi, eax
cmp esi, 0xffffffff
jne 0x414a50
mov ecx, dword [esp + 0x64]
mov edi, 0x10
cmp dword [esp + 0x78], edi
jae 0x414a90
lea ecx, [esp + 0x64]
lea edx, [esp + 0x44]
push edx
call fcn.00402c10
mov esi, 8
mov byte [esp + 0x6c0], 1
cmp dword [eax + 0x18], esi
jb 0x414ab1
mov eax, dword [eax + 4]
jmp 0x414ab4
add eax, 4
push eax
push 0x468
mov ecx, ebx
call fcn.0042643b
mov ecx, eax
call fcn.00426553
cmp dword [esp + 0x5c], esi
jb 0x414adb
mov eax, dword [esp + 0x48]
push eax
call fcn.0041d532
add esp, 4
mov dword [esp + 0x6c0], 0xffffffff
cmp dword [esp + 0x78], edi
jb 0x414af9
mov ecx, dword [esp + 0x64]
push ecx
call fcn.0041d532
add esp, 4
push 0x462
mov ecx, ebx
call fcn.0042643b
test eax, eax
je 0x414c08
call fcn.0041dfa4
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x414b27
push 0x80004005
call fcn.00401020
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x30], eax
mov esi, 0x10
mov dword [esp + 0x6c0], 2
call fcn.0041cee0
mov esi, eax
cmp esi, 0x400
mov dword [esp + 0x34], esi
jl 0x414b7e
fild dword [esp + 0x34]
sub esp, 8
lea ecx, [esp + 0x38]
fmul qword [0x486a80]
fstp qword [esp]
push str._0.1f_GB
push ecx
call fcn.00401bf0
add esp, 0x10
jmp 0x414b91
push esi
lea edx, [esp + 0x34]
push str._d_MB
push edx
call fcn.00401bf0
add esp, 0xc
mov edi, dword [esp + 0x30]
push edi
push 0x462
mov ecx, ebx
call fcn.0042643b
mov ecx, eax
call fcn.00426553
cmp esi, 0x1f0
jle 0x414bb5
push 3
jmp 0x414bcc
cmp esi, 0xf0
jle 0x414bc1
push 2
jmp 0x414bcc
cmp esi, 0x70
jle 0x414bca
push 1
jmp 0x414bcc
push 0
push 0x466
mov ecx, ebx
call fcn.0042643b
push eax
call fcn.004146c0
lea eax, [edi - 0x10]
add esp, 8
mov dword [esp + 0x6c0], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414c08
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x461
mov ecx, ebx
call fcn.0042643b
test eax, eax
je 0x414d15
call fcn.0041dfa4
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x414c36
push 0x80004005
call fcn.00401020
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x30], eax
mov dword [esp + 0x6c0], 3
call fcn.0041d200
mov esi, eax
cmp esi, 0x400
mov dword [esp + 0x34], esi
jl 0x414c88
fild dword [esp + 0x34]
sub esp, 8
lea ecx, [esp + 0x38]
fmul qword [0x486a80]
fstp qword [esp]
push str._0.1f_GB
push ecx
call fcn.00401bf0
add esp, 0x10
jmp 0x414c9b
push esi
lea edx, [esp + 0x34]
push str._d_MB
push edx
call fcn.00401bf0
add esp, 0xc
mov edi, dword [esp + 0x30]
push edi
push 0x461
mov ecx, ebx
call fcn.0042643b
mov ecx, eax
call fcn.00426553
cmp esi, 0xb54
jle 0x414cbf
push 3
jmp 0x414cd9
cmp esi, 0x76c
jle 0x414ccb
push 2
jmp 0x414cd9
cmp esi, 0x3e8
jle 0x414cd7
push 1
jmp 0x414cd9
push 0
push 0x465
mov ecx, ebx
call fcn.0042643b
push eax
call fcn.004146c0
lea eax, [edi - 0x10]
add esp, 8
mov dword [esp + 0x6c0], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414d15
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x460
mov ecx, ebx
call fcn.0042643b
test eax, eax
je 0x414ecf
call fcn.0041dfa4
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x414d43
push 0x80004005
call fcn.00401020
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x30], eax
mov dword [esp + 0x6c0], 4
call fcn.0041d270
fstp dword [esp + 0x34]
call fcn.0041d280
fstp dword [esp + 0x38]
mov esi, 0x10
call fcn.0041cee0
push 0x400
lea ecx, [esp + 0x280]
push 0
push ecx
mov edi, eax
call fcn.0043ec20
add esp, 0xc
lea esi, [esp + 0x44]
call fcn.0041d240
cmp dword [eax + 0x18], 0x10
jb 0x414da7
mov eax, dword [eax + 4]
jmp 0x414daa
add eax, 4
push 0x200
lea edx, [esp + 0x280]
push edx
push 0xffffffffffffffff
push eax
push 8
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
setne byte [esp + 0x3f]
cmp dword [esp + 0x5c], 0x10
jb 0x414ddf
mov eax, dword [esp + 0x48]
push eax
call fcn.0041d532
add esp, 4
call fcn.0041d280
sub esp, 8
fstp qword [esp]
call fcn.0041d270
sub esp, 8
cmp byte [esp + 0x4f], 0
fstp qword [esp]
je 0x414e18
lea ecx, [esp + 0x28c]
push ecx
lea edx, [esp + 0x44]
push 0x486138
push edx
call fcn.00401bf0
add esp, 0x1c
jmp 0x414e2a
lea eax, [esp + 0x40]
push 0x486168
push eax
call fcn.00401bf0
add esp, 0x18
mov esi, dword [esp + 0x30]
push esi
push 0x460
mov ecx, ebx
call fcn.0042643b
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextW]
fld dword [0x486a14]
fcom dword [esp + 0x34]
fnstsw ax
test ah, 0x41
jp 0x414e8f
fcomp dword [esp + 0x38]
fnstsw ax
test ah, 0x41
jp 0x414e86
call fcn.0041d4a0
test al, al
je 0x414e86
cmp edi, 0x1f0
jle 0x414e76
push 3
jmp 0x414e93
test al, al
je 0x414e86
cmp edi, 0xf0
jle 0x414e86
push 2
jmp 0x414e93
cmp edi, 0x70
jle 0x414e91
push 1
jmp 0x414e93
fstp st(0)
push 0
push 0x464
mov ecx, ebx
call fcn.0042643b
push eax
call fcn.004146c0
lea eax, [esi - 0x10]
add esp, 8
mov dword [esp + 0x6c0], 0xffffffff
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x414ecf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x45f
mov ecx, ebx
call fcn.0042643b
test eax, eax
je 0x415097
call fcn.0041dfa4
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x414efd
push 0x80004005
call fcn.00401020
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x30], eax
mov dword [esp + 0x6c0], 5
call fcn.0041d3a0
fstp dword [esp + 0x34]
call fcn.0041d460
push 0x200
lea ecx, [esp + 0x80]
mov edi, eax
push 0
push ecx
mov dword [esp + 0x44], edi
call fcn.0043ec20
add esp, 0xc
lea esi, [esp + 0x44]
call fcn.0041d290
cmp dword [eax + 0x18], 0x10
jb 0x414f57
mov eax, dword [eax + 4]
jmp 0x414f5a
add eax, 4
push 0x100
lea edx, [esp + 0x80]
push edx
push 0xffffffffffffffff
push eax
push 8
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
setne bl
cmp dword [esp + 0x5c], 0x10
jb 0x414f8d
mov eax, dword [esp + 0x48]
push eax
call fcn.0041d532
add esp, 4
fld dword [esp + 0x34]
sub esp, 8
fstp qword [esp]
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], 0
mov byte [esp + 0x50], 0
push edi
test bl, bl
je 0x414fcd
lea ecx, [esp + 0x88]
push ecx
lea edx, [esp + 0x40]
push str._s_x__d
push edx
call fcn.00401bf0
add esp, 0x18
jmp 0x414fdf
lea eax, [esp + 0x3c]
push str.core_x__d
push eax
call fcn.00401bf0
add esp, 0x14
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x40]
push ebx
push 0x45f
mov ecx, esi
call fcn.0042643b
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextW]
fild dword [esp + 0x38]
call fcn.0046da20
fstp dword [esp + 0x38]
fld dword [esp + 0x38]
fmul dword [esp + 0x34]
fstp dword [esp + 0x38]
fld dword [esp + 0x38]
fcom qword [0x486a78]
fnstsw ax
test ah, 0x41
jne 0x415033
cmp edi, 1
jle 0x415033
fstp st(0)
push 3
jmp 0x41505b
fld dword [0x486a70]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x415048
fstp st(0)
push 2
jmp 0x41505b
fcomp qword [0x486a68]
fnstsw ax
test ah, 0x41
jne 0x415059
push 1
jmp 0x41505b
push 0
push 0x463
mov ecx, esi
call fcn.0042643b
push eax
call fcn.004146c0
lea eax, [ebx - 0x10]
add esp, 8
mov dword [esp + 0x6c0], 0xffffffff
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x415097
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x40]
mov eax, dword [esi + 0x20]
call fcn.0040c430
mov ecx, esi
call fcn.0041ee7f
mov ecx, dword [esp + 0x6b8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x670]
xor ecx, esp
call fcn.0043bb40
mov esp, ebp
pop ebp
ret