Function at 0x10041efd
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
jmp 0x10041f5e
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 4], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 8], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0xc], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x10], eax
fild dword [ebp - 4]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fmul qword [0x1008d20d]
fstp qword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov dword [0x1012dac7], eax
mov dword [0x1012dacb], edx
fild dword [ebp - 8]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fadd qword [0x1008d215]
fstp qword [ebp - 0x38]
push 0x80000601
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push 1
mov ebx, 0x168
call fcn.100711b0
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [0x1012dacf]
test ebx, ebx
je 0x1004208c
push ebx
call fcn.100704d4
add esp, 4
pop eax
mov dword [0x1012dacf], eax
fild dword [ebp - 0xc]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fadd qword [0x1008d21d]
fstp qword [ebp - 0x38]
push 0x80000601
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push 1
mov ebx, 0x9dc
call fcn.10071de0
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x198
call fcn.100717c0
add esp, 0x10
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [0x1012dad3]
test ebx, ebx
je 0x100420f5
push ebx
call fcn.100704d4
add esp, 4
pop eax
mov dword [0x1012dad3], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fmul qword [0x1008d225]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
call fcn.10001d9a
mov dword [0x1012dad7], eax
mov dword [0x1012dadb], edx
push 0x80000301
push 0
push dword [ebp - 4]
push 1
mov ebx, 0x168
call fcn.100711b0
add esp, 0x10
mov dword [ebp - 0x2c], eax
push 0x80000301
push 0
push dword [ebp - 8]
push 1
mov ebx, 0x168
call fcn.100711b0
add esp, 0x10
mov dword [ebp - 0x30], eax
push 0x80000301
push 0
push dword [ebp - 0xc]
push 1
mov ebx, 0x168
call fcn.100711b0
add esp, 0x10
mov dword [ebp - 0x34], eax
push 0x80000301
push 0
push dword [ebp - 0x10]
push 1
mov ebx, 0x168
call fcn.100711b0
add esp, 0x10
mov dword [ebp - 0x38], eax
push dword [ebp - 0x38]
push 0x1008b91b
push dword [ebp - 0x34]
push 0x1008b91b
push dword [ebp - 0x30]
push 0x1008b91b
push dword [ebp - 0x2c]
push 0x1008d22d
mov ecx, 8
call fcn.100017d7
add esp, 0x20
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x100421dc
push ebx
call fcn.100704d4
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x100421ec
push ebx
call fcn.100704d4
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x100421fc
push ebx
call fcn.100704d4
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x1004220c
push ebx
call fcn.100704d4
add esp, 4
lea eax, [ebp - 0x3c]
push eax
call fcn.1001fae8
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x10042228
push ebx
call fcn.100704d4
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x1004223b
mov eax, 0x10089266
push eax
push 1
mov ebx, 0x164
call fcn.100738a0
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x10042264
push ebx
call fcn.100704d4
add esp, 4
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
fild dword [ebp - 0xc]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 8]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x40]
mov dword [0x1012dadf], eax
mov dword [0x1012dae3], edx
fild dword [ebp - 4]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 8]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [0x1012dadf]
fadd qword [ebp - 0x40]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fsub qword [0x1008d234]
fstp qword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
mov dword [0x1012dadf], eax
mov dword [0x1012dae3], edx
fld qword [0x1012dadf]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x30]
fadd qword [ebp - 0x30]
fild dword [ebp - 4]
fstp qword [ebp - 0x38]
fadd qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
call fcn.10001d9a
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
fild qword [ebp - 0x20]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 8]
fstp qword [ebp - 0x48]
fsub qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.10001d9a
mov dword [0x1012dae7], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 4]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fild dword [0x1012dae7]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fadd qword [ebp - 0x40]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.10001d9a
mov dword [0x1012dae7], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 4]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fild dword [0x1012dae7]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fadd qword [ebp - 0x40]
fadd qword [0x1008d23c]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.10001d9a
mov dword [0x1012dae7], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fild dword [0x1012dae7]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fadd qword [ebp - 0x40]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.10001d9a
mov dword [0x1012daeb], eax
mov dword [0x1012daef], edx
fild qword [0x1012daeb]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x38]
fmul qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fadd qword [0x1008d244]
fstp qword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov dword [0x1012daf3], eax
mov dword [0x1012daf7], edx
push 0x80000301
push 0
push dword [ebp - 0x10]
fld qword [0x1012daf3]
call fcn.10001d9a
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x9f8
call fcn.10072a50
add esp, 0x1c
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov dword [0x1012daf3], eax
mov dword [0x1012daf7], edx
push 0x80000301
push 0
push 0x2014d
fld qword [0x1012daf3]
call fcn.10001d9a
push 0x80000301
push 0
push eax
push 2
mov ebx, 0xc8
call fcn.10072950
add esp, 0x1c
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov dword [0x1012daf3], eax
mov dword [0x1012daf7], edx
push 0x80000601
push dword [0x1012daf7]
push dword [0x1012daf3]
push 1
mov ebx, 0x9dc
call fcn.10071de0
add esp, 0x10
mov dword [ebp - 0x2c], eax
push 0x80000301
push 0
push 0x13d2
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 2
mov ebx, 0xcc
call fcn.10072be0
add esp, 0x1c
mov dword [ebp - 0x38], eax
fild dword [ebp - 0x38]
fstp qword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov dword [0x1012daf3], eax
mov dword [0x1012daf7], edx
push 0x80000601
push dword [0x1012daf7]
push dword [0x1012daf3]
push 1
mov ebx, 0x9dc
call fcn.10071de0
add esp, 0x10
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x1008d24c]
fstp qword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [0x1012daf3], eax
mov dword [0x1012daf7], edx
push 0x80000601
push dword [0x1012daf7]
push dword [0x1012daf3]
push 1
mov ebx, 0x9dc
call fcn.10071de0
add esp, 0x10
mov dword [ebp - 0x2c], eax
push 0x80000301
push 0
push dword [ebp - 4]
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 2
mov ebx, 0xcc
call fcn.10072be0
add esp, 0x1c
mov dword [ebp - 0x38], eax
fild dword [ebp - 0x38]
fstp qword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov dword [0x1012daf3], eax
mov dword [0x1012daf7], edx
fld qword [0x1012daf3]
fdiv qword [0x1008d254]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fsub qword [ebp - 0x18]
ftst
fnstsw ax
test ah, 1
je 0x100425d6
fchs
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x10042620
cmp dword [ebp - 0x24], 0x5f3
je 0x100425f6
jmp 0x100425e7
mov dword [ebp - 0x28], 0
mov dword [0x1012dafb], 0x38
mov dword [0x1012daff], 0xf0
mov dword [0x1012db03], 0x4e
jmp 0x1004263e
mov dword [0x1012dafb], 0x10
mov dword [0x1012daff], 0x20
mov dword [0x1012db03], 0x30
fild dword [0x1012da87]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [0x1012dccb]
fstp qword [ebp - 0x38]
fsub qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
call fcn.10001d9a
mov dword [ebp - 0x28], eax
fld qword [0x1012dac7]
fdiv qword [0x1008d20d]
fstp qword [ebp - 0x30]
fild dword [ebp - 4]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x30]
fsub qword [ebp - 0x38]
ftst
fnstsw ax
test ah, 1
je 0x1004268a
fchs
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x100426fa
mov dword [0x1012dafb], 0x2c
mov dword [0x1012daff], 0xa
mov dword [0x1012db03], 8
cmp dword [ebp - 0x24], 0x5f3
je 0x100426f0
mov dword [0x1012da87], 0x3e2a6
mov dword [0x1012dafb], 0x1c
mov dword [0x1012daff], 0x2c
mov dword [0x1012db03], 0x80
jmp 0x100426b9
mov dword [0x1012da87], 0
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [0x1012dacf]
test eax, eax
jne 0x1004270f
mov eax, 0x10089266
push eax
push 1
mov ebx, 0x9dc
call fcn.10071de0
add esp, 0x10
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x1008d215]
fstp qword [ebp - 0x3c]
fild dword [ebp - 8]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x44]
ftst
fnstsw ax
test ah, 1
je 0x1004274e
fchs
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x100427be
mov dword [0x1012dafb], 0x20
mov dword [0x1012daff], 0x40
mov dword [0x1012db03], 0x52
cmp dword [ebp - 0x24], 0x5f3
je 0x100427b4
mov dword [0x1012da87], 0x122c
mov dword [0x1012dafb], 0x21c0
mov dword [0x1012daff], 0x78
mov dword [0x1012db03], 0x238
jmp 0x1004277d
mov dword [0x1012da87], 0x7c
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push htons
push 0
mov eax, dword [0x1012dad3]
test eax, eax
jne 0x100427e5
mov eax, 0x1008929b
push eax
push 3
mov ebx, 0x19c
call fcn.100725c0
add esp, 0x28
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
cmp ecx, 0x80000101
jne 0x10042819
and eax, 0xff
jmp 0x1004283f
cmp ecx, 0x80000201
jne 0x10042824
cwde
jmp 0x1004283f
mov dword [ebp - 0x3c], eax
cmp ecx, 0x80000301
je 0x10042842
cmp ecx, 0x80000401
jne 0x10042847
mov dword [ebp - 0x38], edx
fild qword [ebp - 0x3c]
jmp 0x10042873
mov dword [ebp - 0x3c], eax
fild dword [ebp - 0x3c]
jmp 0x10042873
cmp ecx, 0x80000501
jne 0x10042854
fld dword [ebp - 0x3c]
jmp 0x10042873
cmp ecx, 0x80000601
je 0x1004287c
push 0x14df
push 0x40107dd
push 2
call fcn.100704da
add esp, 0xc
fstp qword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
fld qword [ebp - 0x3c]
fsub qword [0x1008d21d]
fstp qword [ebp - 0x44]
mov ecx, dword [ebp - 0x2c]
cmp ecx, reloc.WS2_32.dll_connect
je 0x100428a5
cmp ecx, 0x80000005
jne 0x100428b5
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x100428b5
push ebx
call fcn.100704d4
add esp, 4
fild dword [ebp - 0xc]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x44]
fsub qword [ebp - 0x4c]
ftst
fnstsw ax
test ah, 1
je 0x100428cc
fchs
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x1004293c
mov dword [0x1012dafb], 0x157a
mov dword [0x1012daff], 0x5a72
mov dword [0x1012db03], 0x175a4
cmp dword [ebp - 0x24], 0x5f3
je 0x10042932
mov dword [0x1012da87], 0x3d1e
mov dword [0x1012dafb], 0x303c
mov dword [0x1012daff], 0x3c6c
mov dword [0x1012db03], 0x78f48
jmp 0x100428fb
mov dword [0x1012da87], 0
fild qword [0x1012dad7]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fdiv qword [0x1008d225]
fstp qword [ebp - 0x38]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x38]
fsub qword [ebp - 0x40]
ftst
fnstsw ax
test ah, 1
je 0x10042968
fchs
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x100429d8
mov dword [0x1012dafb], 0xbadf8
mov dword [0x1012daff], 0x15d6c
mov dword [0x1012db03], 0x2b82748
cmp dword [ebp - 0x24], 0x5f3
je 0x100429ce
mov dword [0x1012da87], 0x12786
mov dword [0x1012dafb], 0x2173c69c
mov dword [0x1012daff], 0xe65ba
mov dword [0x1012db03], 0x53df1b6
jmp 0x10042997
mov dword [0x1012da87], 0
call fcn.10018fbc
push 3
call fcn.1002280f
mov dword [ebp - 0x2c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x100429fd
mov eax, 0x10089266
push eax
push 1
mov ebx, 0x9dc
call fcn.10071de0
add esp, 0x10
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x10042a23
push ebx
call fcn.100704d4
add esp, 4
cmp dword [ebp - 0x30], 1
jge 0x10042a51
mov dword [0x1012da87], 0
mov dword [0x1012daff], 0
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor esp, esp
xor ebp, ebp
xor esi, esi
xor edi, edi
fild dword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fild dword [0x1012daff]
fstp qword [ebp - 0x38]
fadd qword [ebp - 0x38]
fadd qword [0x1008c4eb]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
call fcn.10001d9a
mov dword [0x1012da87], eax
jmp 0x10042a8c
mov esp, ebp
pop ebp
ret