Function at 0x41d89b
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
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 - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x58], 0
jmp 0x41d950
push 0xffffffffffffffff
push 8
push 0x160682aa
push 0x52064405
call fcn.0042f6b1
add esp, 0x10
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
je 0x41da17
push 0xffffffffffffffff
push 8
push 0x6064404
push 0x52064405
call fcn.0042f6b1
add esp, 0x10
mov dword [ebp - 0x68], eax
push 0x4be8f5
push dword [ebp - 0x68]
call fcn.00401717
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x41d9cc
push ebx
call fcn.0042f693
add esp, 4
cmp dword [ebp - 0x6c], 0
jne 0x41da17
push 0x10001
push 0x6064404
push 0x52064405
push 1
mov ebx, 0x42fb40
call fcn.0042f687
add esp, 0x10
push eax
call fcn.0041bf08
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
je 0x41da17
xor eax, eax
jmp 0x41da1c
mov eax, 1
test eax, eax
je 0x41da2b
add eax, 0x4062d03
and byte [eax + ebp*2], al
add byte [eax], al
add byte [eax], al
push 0
mov ebx, 0x431e40
call fcn.0042f687
add esp, 4
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
push 0x80000301
push 0
push 8
push reloc.WS2_32.dll_closesocket
push dword [0x4f36b8]
push dword [0x4f36b4]
push reloc.WS2_32.dll_closesocket
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
push 3
mov ebx, 0x431820
call fcn.0042f687
add esp, 0x28
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
fld qword [ebp - 0x70]
fsub qword [0x4be9bb]
fcomp qword [0x4bea15]
fnstsw ax
test ah, 1
jne 0x41dad1
add eax, 0x3040604
add al, 0x3f
add dword [0x33c03306], eax
leave
xor edx, edx
xor ebx, ebx
xor esp, esp
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x41e99e
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 - 0x60]
fld qword [ebp - 0x60]
fmul qword [0x4bf8ab]
fstp qword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
fild dword [ebp - 8]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fadd qword [0x4beab9]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x41dc1b
push ebx
call fcn.0042f693
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0xc]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fadd qword [0x4bf8b3]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 1
mov ebx, 0x4305e0
call fcn.0042f687
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x430eb0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41dc94
push ebx
call fcn.0042f693
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fmul qword [0x4bf8bb]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
call fcn.004015b4
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
push 0x80000301
push 0
push dword [ebp - 4]
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x5c], eax
push 0x80000301
push 0
push dword [ebp - 8]
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x60], eax
push 0x80000301
push 0
push dword [ebp - 0xc]
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x64], eax
push 0x80000301
push 0
push dword [ebp - 0x10]
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x68], eax
push dword [ebp - 0x68]
push 0x4be922
push dword [ebp - 0x64]
push 0x4be922
push dword [ebp - 0x60]
push 0x4be922
push dword [ebp - 0x5c]
push 0x4bf8c3
mov ecx, 8
call fcn.0040106f
add esp, 0x20
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x41dd9e
push ebx
call fcn.0042f693
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x41ddb1
push ebx
call fcn.0042f693
add esp, 4
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x41ddc4
push ebx
call fcn.0042f693
add esp, 4
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x41ddd7
push ebx
call fcn.0042f693
add esp, 4
lea eax, [ebp - 0x6c]
push eax
call fcn.0041e9d2
mov dword [ebp - 0x70], eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x41ddfc
push ebx
call fcn.0042f693
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0x70]
test eax, eax
jne 0x41de12
mov eax, 0x4be8f5
push eax
push 1
mov ebx, 0x430260
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x41de44
push ebx
call fcn.0042f693
add esp, 4
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
fild dword [ebp - 0xc]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fild dword [ebp - 8]
fstp qword [ebp - 0x68]
fmul qword [ebp - 0x68]
fstp qword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
fild dword [ebp - 4]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fild dword [ebp - 8]
fstp qword [ebp - 0x68]
fmul qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x38]
fadd qword [ebp - 0x70]
fadd qword [0x4bf8ca]
fstp qword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
fld qword [ebp - 0x38]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x60]
fadd qword [ebp - 0x60]
fild dword [ebp - 4]
fstp qword [ebp - 0x68]
fadd qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.004015b4
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
fild qword [ebp - 0x40]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fmul qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fild dword [ebp - 8]
fstp qword [ebp - 0x78]
fsub qword [ebp - 0x78]
fstp qword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x68]
fmul qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x38]
fadd qword [ebp - 0x70]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
call fcn.004015b4
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fild dword [ebp - 4]
fstp qword [ebp - 0x68]
fmul qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fild qword [ebp - 0x40]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
fadd qword [ebp - 0x70]
fadd qword [0x4bf8d2]
fstp qword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x68]
fmul qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x48]
fadd qword [ebp - 0x70]
fstp qword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x60]
fmul qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fadd qword [0x4bf8da]
fstp qword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
push 0x80000301
push 0
push dword [ebp - 0x10]
fld qword [ebp - 0x38]
call fcn.004015b4
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x432610
call fcn.0042f687
add esp, 0x1c
mov dword [ebp - 0x64], eax
fild dword [ebp - 0x64]
fstp qword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
push 0x80000301
push 0
push 0x1e54b
fld qword [ebp - 0x48]
call fcn.004015b4
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x42fb00
call fcn.0042f687
add esp, 0x1c
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x41e131
push ebx
call fcn.0042f693
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x4c]
test eax, eax
jne 0x41e148
mov eax, 0x4be8f5
push eax
push 1
mov ebx, 0x4305e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x5c], eax
push 0x80000301
push 0
push 0x1e6c
push 0x80000301
push 0
push dword [ebp - 0x5c]
push 2
mov ebx, 0x42fb20
call fcn.0042f687
add esp, 0x1c
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x41e1c3
push ebx
call fcn.0042f693
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x4c]
test eax, eax
jne 0x41e1da
mov eax, 0x4be8f5
push eax
push 1
mov ebx, 0x4305e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x64], eax
fild dword [ebp - 0x64]
fstp qword [ebp - 0x64]
fld qword [ebp - 0x64]
fsub qword [0x4bf8e2]
fstp qword [ebp - 0x6c]
push 0x80000601
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
push 1
mov ebx, 0x4316e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x41e251
push ebx
call fcn.0042f693
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x4c]
test eax, eax
jne 0x41e268
mov eax, 0x4be8f5
push eax
push 1
mov ebx, 0x4305e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x5c], eax
push 0x80000301
push 0
push dword [ebp - 4]
push 0x80000301
push 0
push dword [ebp - 0x5c]
push 2
mov ebx, 0x42fb20
call fcn.0042f687
add esp, 0x1c
mov dword [ebp - 0x68], eax
fild dword [ebp - 0x68]
fstp qword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
fld qword [ebp - 0x54]
fdiv qword [0x4bf8ea]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fsub qword [ebp - 0x30]
ftst
fnstsw ax
test ah, 1
je 0x41e2f1
fchs
fcomp qword [0x4bea84]
fnstsw ax
test ah, 0x41
jne 0x41e392
mov eax, 1
cmp eax, 2
jne 0x41e302
cmp dword [ebp - 0x58], 0
jne 0x41e32a
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e30c
call fcn.0040ad98
push 0
call fcn.0042f6b7
add esp, 4
call fcn.0041907b
cmp dword [ebp - 0x58], 0
jne 0x41e35c
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e33e
cmp dword [ebp - 0xc], 0x22b8
je 0x41e37d
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e35c
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor esp, esp
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x41e99e
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov eax, 0x4be8f5
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x41e3b6
push ebx
call fcn.0042f693
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
fld qword [ebp - 0x18]
fdiv qword [0x4bf8ab]
fstp qword [ebp - 0x60]
fild dword [ebp - 4]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x60]
fsub qword [ebp - 0x68]
ftst
fnstsw ax
test ah, 1
je 0x41e413
fchs
fcomp qword [0x4bea84]
fnstsw ax
test ah, 0x41
jne 0x41e49f
mov eax, 1
cmp eax, 2
jne 0x41e424
cmp dword [ebp - 0x58], 0
jne 0x41e44c
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e42e
call fcn.0040ad98
push 0
call fcn.0042f6b7
add esp, 4
call fcn.0041907b
cmp dword [ebp - 0x58], 0
jne 0x41e47e
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e460
cmp dword [ebp - 0xc], 0x22b8
je 0x41e49f
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e47e
push VariantClear
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x41e4b2
mov eax, 0x4be8f5
push eax
push 1
mov ebx, 0x4305e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x64], eax
fild dword [ebp - 0x64]
fstp qword [ebp - 0x64]
fld qword [ebp - 0x64]
fsub qword [0x4beab9]
fstp qword [ebp - 0x6c]
fild dword [ebp - 8]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x6c]
fsub qword [ebp - 0x74]
ftst
fnstsw ax
test ah, 1
je 0x41e509
fchs
fcomp qword [0x4bea84]
fnstsw ax
test ah, 0x41
jne 0x41e595
mov eax, 1
cmp eax, 2
jne 0x41e51a
cmp dword [ebp - 0x58], 0
jne 0x41e542
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e524
call fcn.0040ad98
push 0
call fcn.0042f6b7
add esp, 4
call fcn.0041907b
cmp dword [ebp - 0x58], 0
jne 0x41e574
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e556
cmp dword [ebp - 0xc], 0x22b8
je 0x41e595
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e574
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x41e5ba
mov eax, 0x4be9b3
push eax
push 3
mov ebx, 0x4310a0
call fcn.0042f687
add esp, 0x28
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
cmp ecx, 0x80000101
jne 0x41e600
and eax, 0xff
jmp 0x41e62f
cmp ecx, 0x80000201
jne 0x41e60b
cwde
jmp 0x41e62f
mov dword [ebp - 0x6c], eax
cmp ecx, 0x80000301
je 0x41e635
cmp ecx, 0x80000401
jne 0x41e63d
mov dword [ebp - 0x68], edx
fild qword [ebp - 0x6c]
jmp 0x41e662
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x6c]
jmp 0x41e662
cmp ecx, 0x80000501
jne 0x41e64d
fld dword [ebp - 0x6c]
jmp 0x41e662
cmp ecx, 0x80000601
je 0x41e674
push 2
call fcn.0042f699
add esp, 4
fstp qword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
fld qword [ebp - 0x6c]
fsub qword [0x4bf8b3]
fstp qword [ebp - 0x74]
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x80000004
je 0x41e6ac
cmp ecx, reloc.WS2_32.dll_getpeername
jne 0x41e6bf
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x41e6bf
push ebx
call fcn.0042f693
add esp, 4
fild dword [ebp - 0xc]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x74]
fsub qword [ebp - 0x7c]
ftst
fnstsw ax
test ah, 1
je 0x41e6df
fchs
fcomp qword [0x4bea84]
fnstsw ax
test ah, 0x41
jne 0x41e76b
mov eax, 1
cmp eax, 2
jne 0x41e6f0
cmp dword [ebp - 0x58], 0
jne 0x41e718
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e6fa
call fcn.0040ad98
push 0
call fcn.0042f6b7
add esp, 4
call fcn.0041907b
cmp dword [ebp - 0x58], 0
jne 0x41e74a
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e72c
cmp dword [ebp - 0xc], 0x22b8
je 0x41e76b
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e74a
fild qword [ebp - 0x28]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fdiv qword [0x4bf8bb]
fstp qword [ebp - 0x68]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x68]
fsub qword [ebp - 0x70]
ftst
fnstsw ax
test ah, 1
je 0x41e7a6
fchs
fcomp qword [0x4bea84]
fnstsw ax
test ah, 0x41
jne 0x41e832
mov eax, 1
cmp eax, 2
jne 0x41e7b7
cmp dword [ebp - 0x58], 0
jne 0x41e7df
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e7c1
call fcn.0040ad98
push 0
call fcn.0042f6b7
add esp, 4
call fcn.0041907b
cmp dword [ebp - 0x58], 0
jne 0x41e811
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e7f3
cmp dword [ebp - 0xc], 0x22b8
je 0x41e832
push 0
mov ebx, 0x432170
call fcn.0042f687
add esp, 4
jmp 0x41e811
push 1
push 1
call fcn.00419e92
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
je 0x41e889
call fcn.0040ad98
push 0x80000301
push 0
push 0x34fb5e3
push 1
mov ebx, 0x432380
call fcn.0042f687
add esp, 0x10
call fcn.0041907b
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor esp, esp
xor ebp, ebp
xor esi, esi
xor edi, edi
call fcn.00411a73
push 3
call fcn.004159f8
mov dword [ebp - 0x5c], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x41e8b4
mov eax, 0x4be8f5
push eax
push 1
mov ebx, 0x4305e0
call fcn.0042f687
add esp, 0x10
mov dword [ebp - 0x60], eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x41e8e0
push ebx
call fcn.0042f693
add esp, 4
cmp dword [ebp - 0x60], 1
jge 0x41e925
call fcn.0041907b
call fcn.0040ad98
push 0x80000301
push 0
push 0x34fb5e3
push 1
mov ebx, 0x432380
call fcn.0042f687
add esp, 0x10
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor esp, esp
xor ebp, ebp
xor esi, esi
xor edi, edi
cmp dword [0x4f36b0], 0x2710
jl 0x41e949
cmp dword [0x4f36b0], 0x1869f
jg 0x41e949
xor eax, eax
jmp 0x41e94e
mov eax, 1
test eax, eax
je 0x41e98e
call fcn.0041907b
call fcn.0040ad98
push 0x80000301
push 0
push 0x34fb5e3
push 1
mov ebx, 0x432380
call fcn.0042f687
add esp, 0x10
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor esp, esp
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x41e99e
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x41e9ae
push ebx
call fcn.0042f693
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41e9be
push ebx
call fcn.0042f693
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x41e9ce
push ebx
call fcn.0042f693
add esp, 4
mov esp, ebp
pop ebp
ret