Function at 0x418710
Capabilities:
Resolve function by parsing pe exports

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 0x50a8b5
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x2a8
mov eax, dword [0x54f040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x50], edi
mov eax, dword [ebx + 8]
xorps xmm0, xmm0
push edi
mov dword [ebp - 0x6c], 0
mov ecx, dword [edi + 0x18]
push eax
mov dword [ebp - 0x4c], eax
movsd qword [ebp - 0x98], xmm0
movsd qword [ebp - 0xe8], xmm0
movsd qword [ebp - 0x140], xmm0
call fcn.00417fb0
test eax, eax
jns 0x418796
mov eax, 9
jmp 0x419a0f
jle 0x41879d
add dword [edi + 0x3c], eax
jmp 0x4187a0
inc dword [edi + 0x40]
mov eax, dword [ebp - 0x4c]
xor esi, esi
cmp dword [eax + 4], esi
jle 0x41880c
nop word [eax + eax]
mov edx, dword [edi]
mov ecx, dword [edi + 4]
test edx, edx
je 0x4187c3
mov eax, ecx
imul eax, esi
lea eax, [edx + eax*8]
jmp 0x4187c5
xor eax, eax
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x104], ecx
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x110], edi
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], esi
call fcn.0041bf50
mov eax, dword [edi + 0xac]
movsd qword [eax + esi*8], xmm0
inc esi
mov eax, dword [ebp - 0x4c]
cmp esi, dword [eax + 4]
jl 0x4187b0
push edi
lea ecx, [ebp - 0x238]
call fcn.00419d80
mov dword [ebp - 4], 0
lea edx, [edi + 0xc]
mov eax, dword [ebp - 0x238]
mov esi, dword [ebp - 0x234]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], esi
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x230]
cmp dword [edx + 4], esi
jne 0x418848
cmp dword [edx + 8], ecx
je 0x418878
test esi, esi
je 0x418868
test ecx, ecx
je 0x418868
mov eax, accept
cdq
idiv ecx
cmp esi, eax
setg al
test al, al
jne 0x419a2f
lea edx, [edi + 0xc]
push ecx
imul ecx, esi
push esi
push ecx
mov ecx, edx
call fcn.00419c60
lea edx, [edi + 0xc]
mov eax, dword [edx + 4]
lea ecx, [ebp - 0x78]
mov esi, dword [edx]
mov dword [ebp - 0x8c], ecx
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x88], ecx
lea ecx, [ebp - 0x31]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x78], esi
mov ecx, dword [edx + 8]
imul ecx, eax
mov dword [ebp - 0x80], edx
mov eax, ecx
mov dword [ebp - 0x58], ecx
cdq
xor ecx, ecx
sub eax, edx
mov edx, eax
and edx, 0xfffffffe
test edx, edx
jle 0x4188d7
nop word [eax + eax]
mov eax, dword [ebp - 0x68]
movups xmm0, xmmword [eax + ecx*8]
movups xmmword [esi + ecx*8], xmm0
add ecx, 2
cmp ecx, edx
jge 0x4188d7
mov esi, dword [ebp - 0x78]
jmp 0x4188c0
push dword [ebp - 0x58]
lea ecx, [ebp - 0x8c]
call fcn.00420a70
add esp, 4
mov byte [ebp - 4], 0
lea eax, [ebp - 0x224]
lea ecx, [edi + 0x9c]
push eax
call fcn.00419ae0
cmp dword [edi + 0x88], 1
jne 0x4189b2
cmp byte [edi + 0x98], 0
jne 0x418962
xor edx, edx
cmp dword [edi + 0x34], edx
jle 0x418962
movsd xmm1, qword [ebp - 0x98]
nop dword [eax]
nop word [eax + eax]
mov ecx, dword [edi + 0xac]
movsd xmm0, qword [ecx + edx*8]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x41894f
movsd xmm0, qword [0x530d98]
jmp 0x418954
movsd xmm0, qword [ecx + edx*8]
mov eax, dword [edi + 0x2c]
movsd qword [eax + edx*8], xmm0
inc edx
cmp edx, dword [edi + 0x34]
jl 0x418930
lea eax, [edi + 0x2c]
mov dword [ebp - 0xcc], eax
lea ecx, [ebp - 0xd0]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xc8], eax
call fcn.00419e70
movaps xmm1, xmm0
movsd qword [ebp - 0x140], xmm0
mulsd xmm1, qword [edi + 0x58]
ucomisd xmm1, qword [ebp - 0x98]
movsd qword [edi + 0x90], xmm1
lahf
test ah, 0x44
jp 0x4189b2
movsd xmm0, qword [edi + 0x58]
movsd qword [edi + 0x90], xmm0
mov eax, dword [edi + 0x1c]
lea esi, [edi + 0xbc]
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 2
mov eax, dword [edi + 0x20]
mov edx, dword [esi + 4]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x54], edx
cmp edx, eax
je 0x4189fc
mov ecx, dword [esi]
call fcn.00418380
mov eax, dword [ebp - 0x3c]
test eax, eax
jle 0x4189ee
mov ecx, eax
call fcn.0041b240
mov ecx, eax
mov eax, dword [ebp - 0x3c]
jmp 0x4189f0
xor ecx, ecx
mov edx, esi
mov dword [ebp - 0x54], eax
mov dword [edx], ecx
mov edx, eax
mov dword [esi + 4], eax
mov ecx, dword [esi]
lea eax, [ebp - 0x48]
mov dword [ebp - 0x8c], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x31]
mov dword [ebp - 0x84], eax
mov eax, edx
cdq
sub eax, edx
mov dword [ebp - 0x80], esi
mov esi, eax
mov dword [ebp - 0x48], ecx
and esi, 0xfffffffe
xor edx, edx
test esi, esi
jle 0x418a47
nop
mov eax, dword [ebp - 0x38]
movups xmm0, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm0
add edx, 2
cmp edx, esi
jge 0x418a47
mov ecx, dword [ebp - 0x48]
jmp 0x418a30
push dword [ebp - 0x54]
mov edx, esi
lea ecx, [ebp - 0x8c]
call fcn.00420a70
add esp, 4
lea eax, [ebp - 0x22c]
lea ecx, [ebp - 0x114]
push eax
lea eax, [ebp - 0x238]
push eax
call fcn.00419c30
push dword [ebp - 0x110]
cmp byte [ebp - 0x10c], 0
lea ecx, [ebp - 0x1a8]
push dword [ebp - 0x114]
sete dl
call fcn.00419c30
mov ecx, dword [ebp - 0x108]
mov esi, eax
mov dword [esi + 0xc], ecx
mov ecx, dword [ebp - 0x104]
mov dword [esi + 0x10], ecx
mov ecx, dword [esi]
mov byte [esi + 8], dl
mov dword [ebp - 0xd4], ecx
mov eax, dword [esi + 4]
mov dword [ebp - 0xd0], eax
mov al, byte [esi + 8]
mov byte [ebp - 0xcc], al
mov eax, dword [esi + 0xc]
mov dword [ebp - 0xc8], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0xc4], eax
lea eax, [edi + 0x1c]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x68]
call fcn.0041b440
push 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x6c], 1
push eax
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0xd4]
call fcn.0041e440
lea eax, [ebp - 0x68]
lea ecx, [edi + 0xbc]
push eax
call fcn.00419cd0
lea ecx, [ebp - 0x68]
call fcn.00418210
mov eax, dword [edi + 0x34]
lea esi, [edi + 0x24]
mov dword [ebp - 0x58], eax
mov eax, dword [edi + 0xbc]
mov dword [ebp - 0x88], eax
mov eax, dword [edi + 0xc0]
mov dword [ebp - 0x80], eax
mov byte [ebp - 4], 4
mov eax, dword [esi + 4]
mov edi, dword [ebp - 0x58]
mov dword [ebp - 0x38], eax
cmp eax, edi
je 0x418b6b
mov ecx, dword [esi]
call fcn.00418380
test edi, edi
jle 0x418b5d
mov ecx, edi
call fcn.0041b240
jmp 0x418b5f
xor eax, eax
mov ecx, esi
mov dword [ecx], eax
mov eax, edi
mov dword [esi + 4], edi
mov dword [ebp - 0x38], edi
mov ecx, dword [esi]
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x100], edx
lea edx, [ebp - 0x88]
mov dword [ebp - 0xfc], edx
lea edx, [ebp - 0x31]
mov dword [ebp - 0xf8], edx
cdq
sub eax, edx
mov dword [ebp - 0xf4], esi
mov esi, eax
mov dword [ebp - 0x3c], ecx
and esi, 0xfffffffe
xor edx, edx
test esi, esi
jle 0x418bbc
mov eax, dword [ebp - 0x88]
movups xmm0, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm0
add edx, 2
cmp edx, esi
jge 0x418bbc
mov ecx, dword [ebp - 0x3c]
jmp 0x418ba2
push dword [ebp - 0x38]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.004212e0
mov ecx, dword [ebp - 0x50]
add esp, 4
movsd xmm1, qword [ebp - 0x98]
mov byte [ebp - 4], 0
movsd xmm0, qword [ecx + 0x48]
ucomisd xmm0, xmm1
movsd qword [ecx + 0x50], xmm1
lahf
test ah, 0x44
jnp 0x418de7
mov eax, dword [ecx + 0x34]
test eax, eax
jle 0x418de7
lea edx, [ecx + 0x24]
movaps xmm5, xmm0
mov dword [ebp - 0x3c], edx
lea eax, [ecx + 0xc]
xor edx, edx
mov dword [ebp - 0x58], eax
mov edi, 1
mov dword [ebp - 0x38], edx
nop word [eax + eax]
mov eax, dword [ecx + 0x9c]
mov esi, dword [ecx + 0xac]
mov dword [ebp - 0x48], edi
mov eax, dword [eax + edx]
mov dword [ebp - 0x6c], eax
movsd xmm0, qword [esi + eax*8]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x418dd4
mov edx, dword [ebp - 0x58]
cmp dword [edx], 0
mov eax, dword [edx + 4]
je 0x418c64
mov edx, edi
lea edx, [edx*8 - 8]
imul edx, eax
add edx, dword [ecx + 0xc]
jmp 0x418c66
xor edx, edx
mov dword [ebp - 0x118], eax
lea eax, [ecx + 0xc]
mov dword [ebp - 0x110], eax
lea eax, [edi - 1]
mov dword [ebp - 0x11c], edx
mov dword [ebp - 0x108], eax
mov eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x1dc], edx
mov dword [ebp - 0x1d8], edi
mov esi, dword [ecx]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0xd0], ecx
mov ecx, dword [ecx + 4]
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0x264], ecx
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x25c], edi
movsd qword [ebp - 0x250], xmm5
movups xmm0, xmmword [ebp - 0x11c]
movups xmmword [ebp - 0x1d0], xmm0
movq xmm0, qword [ebp - 0x10c]
movq qword [ebp - 0x1c0], xmm0
movups xmm0, xmmword [ebp - 0x1dc]
movups xmmword [ebp - 0x2b4], xmm0
movups xmm0, xmmword [ebp - 0x1cc]
movups xmmword [ebp - 0x2a4], xmm0
movups xmm0, xmmword [ebp - 0x1bc]
movups xmmword [ebp - 0x294], xmm0
movups xmm0, xmmword [ebp - 0xdc]
movups xmmword [ebp - 0x27c], xmm0
movq xmm0, qword [ebp - 0xcc]
movq qword [ebp - 0x26c], xmm0
test edi, edi
jne 0x418d5d
movaps xmm0, xmm1
jmp 0x418da3
mov dword [ebp - 0x12c], edx
lea ecx, [ebp - 0x130]
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x11c], esi
movsd qword [ebp - 0x110], xmm5
mov eax, dword [edx + 4]
mov dword [ebp - 0x114], eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.0041ef90
movsd xmm1, qword [ebp - 0x98]
add esp, 4
mov ecx, dword [ebp - 0x50]
mov esi, dword [ecx + 0xac]
mov eax, dword [ebp - 0x6c]
divsd xmm0, qword [esi + eax*8]
call fcn.00402ff0
comisd xmm0, xmmword [ecx + 0x50]
lea edx, [ecx + 0x50]
lea eax, [ebp - 0x60]
movsd qword [ebp - 0x60], xmm0
cmovbe eax, edx
movsd xmm0, qword [eax]
movsd qword [edx], xmm0
mov edx, dword [ebp - 0x38]
mov eax, dword [ecx + 0x34]
add edx, 4
inc edi
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x48], eax
jl 0x418c20
movsd xmm0, qword [ecx + 0x78]
comisd xmm0, xmmword [ecx + 0x50]
jb 0x418e06
mov edx, 0xd4
xor eax, eax
mov esi, 4
add ecx, edx
jmp 0x419a00
cmp byte [ecx + 0x98], 0
jne 0x418ec9
mov edx, dword [ecx + 0x2c]
lea esi, [ecx + 0x2c]
mov dword [ebp - 0x24], edx
mov eax, dword [ecx + 0xac]
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 5
mov eax, dword [esi + 4]
mov edi, dword [ecx + 0xb0]
mov dword [ebp - 0x38], eax
cmp eax, edi
je 0x418e5b
mov ecx, edx
call fcn.00418380
test edi, edi
jle 0x418e4d
mov ecx, edi
call fcn.0041b240
jmp 0x418e4f
xor eax, eax
mov ecx, esi
mov dword [ecx], eax
mov eax, edi
mov dword [esi + 4], edi
mov dword [ebp - 0x38], edi
mov ecx, dword [esi]
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x8c], edx
lea edx, [ebp - 0x28]
mov dword [ebp - 0x88], edx
lea edx, [ebp - 0x31]
mov dword [ebp - 0x84], edx
cdq
sub eax, edx
mov dword [ebp - 0x80], esi
mov esi, eax
mov dword [ebp - 0x3c], ecx
and esi, 0xfffffffe
xor edx, edx
test esi, esi
jle 0x418eaf
nop dword [eax]
mov eax, dword [ebp - 0x20]
movups xmm1, xmmword [eax + edx*8]
mov eax, dword [ebp - 0x24]
maxpd xmm1, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm1
add edx, 2
cmp edx, esi
jge 0x418eaf
mov ecx, dword [ebp - 0x3c]
jmp 0x418e90
push dword [ebp - 0x38]
mov edx, esi
lea ecx, [ebp - 0x8c]
call fcn.004213c0
mov ecx, dword [ebp - 0x50]
add esp, 4
mov byte [ebp - 4], 0
lea eax, [ecx + 0x24]
mov dword [ebp - 0x134], eax
lea edi, [ecx + 0x9c]
lea eax, [ebp - 0xc0]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x164], eax
lea esi, [ecx + 0xc]
lea eax, [ebp - 0x154]
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x160], eax
lea edx, [ecx + 0x90]
lea eax, [ebp - 0x31]
mov dword [ebp - 0x15c], eax
lea eax, [ebp - 0xbc]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x14c]
mov dword [ebp - 0x170], eax
lea eax, [ebp - 0xa1]
mov dword [ebp - 0x16c], eax
lea eax, [ecx + 0xa4]
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0xb4]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x40]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0xa2]
mov dword [ebp - 0x17c], eax
lea eax, [ecx + 0xb4]
mov dword [ebp - 0x70], eax
lea eax, [ecx + 0xc8]
mov dword [ebp - 0xb8], eax
lea eax, [ecx + 0x2c]
mov dword [ebp - 0x3c], eax
lea eax, [ecx + 0xbc]
mov dword [ebp - 0x6c], eax
lea eax, [ecx + 0x1c]
mov dword [ebp - 0x54], eax
lea eax, [ecx + 0xac]
mov dword [ebp - 0x44], eax
nop dword [eax]
movsd xmm0, qword [edx]
lea ecx, [ebp - 0x238]
mov edx, dword [ebp - 0x3c]
sub esp, 8
movsd qword [esp], xmm0
push dword [ebp - 0x7c]
push dword [ebp - 0xb8]
push dword [ebp - 0x134]
call fcn.00419f00
mov edx, dword [ebp - 0x7c]
add esp, 0x14
mov ecx, dword [edx]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x150], ecx
mov eax, dword [edx + 4]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x158], edx
cdq
sub eax, edx
mov dword [ebp - 0xc0], ecx
mov edx, eax
xor eax, eax
and edx, 0xfffffffe
test edx, edx
jle 0x419016
movaps xmm2, xmmword [0x531040]
mov esi, ecx
movaps xmm1, xmm2
xorps xmm1, xmmword [esi + eax*8]
movups xmmword [ecx + eax*8], xmm1
add eax, 2
cmp eax, edx
jge 0x419013
mov esi, dword [ebp - 0x150]
mov ecx, dword [ebp - 0xc0]
jmp 0x418ff3
mov esi, dword [ebp - 0x48]
push dword [ebp - 0x30]
lea ecx, [ebp - 0x164]
call fcn.00421420
mov eax, dword [ebp - 0x4c]
add esp, 4
mov ecx, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x148], eax
mov eax, dword [ecx]
mov dword [ebp - 0x144], eax
mov byte [ebp - 4], 7
mov eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
mov edx, dword [ecx + 4]
mov dword [ebp - 0x30], edx
cmp edx, eax
je 0x41908f
mov ecx, dword [ecx]
test ecx, ecx
je 0x41906c
movzx eax, byte [ecx - 1]
sub ecx, eax
push ecx
call fcn.00452a51
mov eax, dword [ebp - 0x40]
add esp, 4
test eax, eax
jle 0x41907e
mov ecx, eax
call fcn.0041b240
mov ecx, eax
mov eax, dword [ebp - 0x40]
jmp 0x419080
xor ecx, ecx
mov edx, dword [ebp - 0x44]
mov dword [edx], ecx
mov ecx, edx
mov edx, eax
mov dword [ebp - 0x30], eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x168], eax
mov ecx, dword [eax]
mov eax, edx
cdq
sub eax, edx
mov dword [ebp - 0xbc], ecx
and eax, 0xfffffffe
xor edx, edx
mov dword [ebp - 0x40], eax
test eax, eax
jle 0x4190f1
mov edi, eax
nop dword [eax]
nop word [eax + eax]
mov eax, dword [ebp - 0x144]
movups xmm0, xmmword [eax + edx*8]
mov eax, dword [ebp - 0x148]
movups xmm1, xmmword [eax + edx*8]
addpd xmm1, xmm0
movups xmmword [ecx + edx*8], xmm1
add edx, 2
cmp edx, edi
jge 0x4190eb
mov ecx, dword [ebp - 0xbc]
jmp 0x4190c0
mov edi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x40]
push dword [ebp - 0x30]
mov edx, eax
lea ecx, [ebp - 0x174]
call fcn.004214e0
mov ecx, dword [ebp - 0x7c]
add esp, 4
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x10c], eax
cmp dword [ecx + 4], 1
mov dword [ebp - 0x108], ecx
jne 0x419136
mov eax, dword [eax]
mov ecx, dword [ecx]
movsd xmm0, qword [eax]
mulsd xmm0, qword [ecx]
call fcn.00402ff0
movaps xmm1, xmm0
jmp 0x419198
movsd xmm0, qword [ebp - 0x98]
lea eax, [ebp - 0x60]
movsd xmm1, qword [0x530d98]
lea edx, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x68]
movsd qword [ebp - 0x68], xmm0
push eax
lea ecx, [ebp - 0x110]
movsd qword [ebp - 0x60], xmm1
movsd qword [ebp - 0xa0], xmm0
call fcn.0041e0e0
movsd xmm0, qword [ebp - 0xa0]
xorps xmm1, xmm1
add esp, 8
ucomisd xmm1, xmm0
ja 0x41918b
sqrtsd xmm0, xmm0
jmp 0x419190
call fcn.00507870
movaps xmm1, xmm0
mulsd xmm1, qword [ebp - 0x68]
mov ecx, dword [ebp - 0x50]
movsd qword [ebp - 0xa0], xmm1
movsd qword [ebp - 0x60], xmm1
cmp dword [ecx + 0x88], 1
jne 0x4191d1
movsd xmm0, qword [ecx + 0x90]
lea edx, [ecx + 0x90]
comisd xmm0, xmm1
lea eax, [ebp - 0x60]
cmovbe eax, edx
movsd xmm0, qword [eax]
movsd qword [edx], xmm0
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x30], edx
cmp dword [edx + 0xc], 0
jle 0x419298
xor esi, esi
mov edi, esi
mov eax, dword [edx + 8]
sub esp, 0x10
mov ecx, dword [eax]
mov eax, esp
movups xmm0, xmmword [ecx + 0x10]
add ecx, 0x10
add ecx, esi
movups xmmword [eax], xmm0
call dword [sym.imp.PHDPFuncs.dll_public:_double___thiscall_Date::DaySpan_class_Date_]
fdiv qword [0x530e10]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
movsd xmm0, qword [eax]
movsd xmm3, qword [ebp - 0x98]
comisd xmm3, xmm0
movsd xmm2, qword [eax + 8]
movsd xmm1, qword [eax + 0x10]
fstp qword [ebp - 0x60]
movsd qword [ebp - 0xf0], xmm0
ja 0x419263
comisd xmm3, xmm2
jae 0x419263
comisd xmm3, xmm1
jae 0x419263
movsd xmm0, qword [ebp - 0x60]
divsd xmm0, xmm2
call fcn.00506d20
xorps xmm0, xmmword [0x531040]
call fcn.00506500
mulsd xmm0, qword [ebp - 0xf0]
jmp 0x41926b
movsd xmm0, qword [0x530e68]
mov edx, dword [ebp - 0x30]
mov eax, dword [edx + 8]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
subsd xmm0, qword [ecx + esi]
mov eax, dword [eax]
add esi, 0x20
movsd qword [eax + edi*8], xmm0
inc edi
cmp edi, dword [edx + 0xc]
jl 0x4191e5
mov esi, dword [ebp - 0x48]
mov edi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x50]
inc dword [ecx + 0x3c]
lea ecx, [ecx + 0xbc]
call fcn.00419d00
mov eax, dword [ebp - 0x50]
movaps xmm2, xmm0
movsd xmm1, qword [0x530e68]
mulsd xmm2, qword [0x530d68]
movsd qword [ebp - 0x68], xmm1
movsd xmm1, qword [eax + 0x48]
movsd qword [ebp - 0xf0], xmm0
comisd xmm1, xmm2
jbe 0x4192ed
divsd xmm0, xmm1
movsd xmm3, qword [0x530d98]
mulsd xmm0, xmm0
subsd xmm3, xmm0
movsd qword [ebp - 0x68], xmm3
mov eax, dword [ebp - 0x7c]
xor edx, edx
mov dword [ebp - 0xf4], eax
xor eax, eax
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], edi
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov byte [ebp - 4], 8
mov ecx, dword [esi + 4]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x41933c
xor ecx, ecx
call fcn.00418380
mov eax, dword [ebp - 0x30]
test eax, eax
jle 0x419331
mov ecx, eax
call fcn.0041b240
jmp 0x419333
xor eax, eax
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movsd xmm0, qword [ebp - 0x98]
lea ecx, [ebp - 0x60]
push ecx
mov ecx, eax
movsd qword [ebp - 0x60], xmm0
call fcn.004246f0
movsd xmm0, qword [0x530d98]
lea eax, [ebp - 0x60]
mov ecx, dword [ebp - 0xfc]
lea edx, [ebp - 0xf8]
add esp, 4
movsd qword [ebp - 0x60], xmm0
push eax
lea eax, [ebp - 0x78]
push eax
call fcn.00423ce0
add esp, 8
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x70]
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x30], eax
mov edx, dword [ecx + 4]
mov dword [ebp - 0x2c], edx
cmp edx, eax
je 0x4193ca
mov ecx, dword [ecx]
call fcn.00418380
mov eax, dword [ebp - 0x30]
test eax, eax
jle 0x4193b9
mov ecx, eax
call fcn.0041b240
mov ecx, eax
mov eax, dword [ebp - 0x30]
jmp 0x4193bb
xor ecx, ecx
mov edx, dword [ebp - 0x70]
mov dword [edx], ecx
mov ecx, edx
mov edx, eax
mov dword [ebp - 0x2c], eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x178], eax
mov ecx, dword [eax]
mov eax, edx
cdq
sub eax, edx
mov dword [ebp - 0xb4], ecx
and eax, 0xfffffffe
xor edx, edx
mov dword [ebp - 0x30], eax
test eax, eax
jle 0x419410
mov edi, eax
nop
mov eax, dword [ebp - 0x40]
movups xmm0, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm0
add edx, 2
cmp edx, edi
jge 0x41940a
mov ecx, dword [ebp - 0xb4]
jmp 0x4193f0
mov edi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
push dword [ebp - 0x2c]
mov edx, eax
lea ecx, [ebp - 0x184]
call fcn.00420a70
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x78]
call fcn.00418210
mov ecx, dword [ebp - 0x70]
call fcn.00419d00
mov eax, dword [ebp - 0x50]
xorps xmm1, xmm1
divsd xmm0, qword [eax + 0x48]
mov eax, dword [ebp - 0xb8]
mulsd xmm0, xmm0
movsd qword [ebp - 0x60], xmm0
movsd xmm0, qword [eax]
ucomisd xmm1, xmm0
ja 0x419461
sqrtsd xmm0, xmm0
jmp 0x419466
call fcn.00507870
movsd xmm1, qword [ebp - 0xa0]
movaps xmm2, xmm0
mov ecx, dword [ebp - 0x50]
mulsd xmm2, xmm1
movsd xmm7, qword [0x530da8]
movsd xmm6, qword [ebp - 0x98]
movsd xmm4, qword [ebp - 0x68]
movaps xmm3, xmm6
divsd xmm2, qword [ecx + 0x48]
mulsd xmm2, xmm2
movaps xmm5, xmm2
addsd xmm2, qword [ebp - 0x60]
mulsd xmm5, xmm7
xorps xmm2, xmmword [0x531040]
addsd xmm5, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm3
ucomisd xmm5, xmm6
movsd qword [ebp - 0x28], xmm5
lahf
test ah, 0x44
jnp 0x419524
movaps xmm3, xmm4
movsd xmm0, qword [0x530d78]
divsd xmm3, xmm5
comisd xmm0, xmm3
movsd qword [ebp - 0x60], xmm3
jae 0x419524
movsd xmm0, qword [ecx + 0xc8]
ucomisd xmm0, xmm6
lahf
test ah, 0x44
jnp 0x419503
movsd xmm0, qword [0x530d88]
comisd xmm0, xmm3
ja 0x4195e6
movsd xmm0, qword [ecx + 0xc8]
mulsd xmm0, qword [0x530d80]
mulsd xmm1, xmm7
movsd qword [ecx + 0x90], xmm1
jmp 0x4195de
comisd xmm4, xmm6
jb 0x41953c
movsd xmm7, qword [0x530d80]
movsd qword [ebp - 0xe8], xmm7
jmp 0x419544
movsd xmm7, qword [ebp - 0xe8]
comisd xmm6, xmm4
jbe 0x419578
movaps xmm1, xmm4
movaps xmm7, xmm2
mulsd xmm1, qword [0x530d80]
mulsd xmm7, qword [0x530d80]
addsd xmm1, xmm2
divsd xmm7, xmm1
movsd xmm1, qword [ebp - 0xa0]
movsd qword [ebp - 0xe8], xmm7
movsd xmm0, qword [ebp - 0xf0]
movsd xmm2, qword [0x530d68]
mulsd xmm0, xmm2
comisd xmm0, xmmword [ecx + 0x48]
jae 0x419599
comisd xmm2, xmm7
jbe 0x4195a4
movaps xmm7, xmm2
movsd qword [ebp - 0xe8], xmm7
divsd xmm1, xmm2
lea edx, [ecx + 0x90]
lea eax, [ebp - 0xa0]
movsd xmm0, qword [edx]
comisd xmm0, xmm1
movaps xmm0, xmm7
movsd qword [ebp - 0xa0], xmm1
cmovbe eax, edx
mulsd xmm0, qword [eax]
movsd qword [edx], xmm0
movsd xmm0, qword [ecx + 0xc8]
divsd xmm0, xmm7
movsd qword [ecx + 0xc8], xmm0
movsd xmm7, qword [0x530d48]
comisd xmm3, xmm7
jb 0x4198a6
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx]
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0xb
mov eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x2c], eax
mov edx, dword [ecx + 4]
mov dword [ebp - 0x40], edx
cmp edx, eax
je 0x419644
mov ecx, dword [ecx]
call fcn.00418380
mov eax, dword [ebp - 0x2c]
test eax, eax
jle 0x419633
mov ecx, eax
call fcn.0041b240
mov ecx, eax
mov eax, dword [ebp - 0x2c]
jmp 0x419635
xor ecx, ecx
mov edx, dword [ebp - 0x4c]
mov dword [edx], ecx
mov ecx, edx
mov edx, eax
mov dword [ebp - 0x40], eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x4c]
lea esi, [ebp - 0xb0]
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x194], esi
lea esi, [ebp - 0x30]
mov dword [ebp - 0x190], esi
lea esi, [ebp - 0xa3]
mov ecx, dword [eax]
mov eax, edx
cdq
sub eax, edx
mov dword [ebp - 0xb0], ecx
and eax, 0xfffffffe
mov dword [ebp - 0x18c], esi
xor edx, edx
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x4196ad
mov esi, eax
nop dword [eax]
mov eax, dword [ebp - 0x30]
movups xmm0, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm0
add edx, 2
cmp edx, esi
jge 0x4196aa
mov ecx, dword [ebp - 0xb0]
jmp 0x419690
mov eax, dword [ebp - 0x2c]
push dword [ebp - 0x40]
mov edx, eax
lea ecx, [ebp - 0x194]
call fcn.00420a70
mov eax, dword [ebp - 0x3c]
add esp, 4
mov ecx, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x84], eax
mov eax, dword [ecx]
mov dword [ebp - 0x80], eax
mov byte [ebp - 4], 0xc
mov eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x2c], eax
mov edx, dword [ecx + 4]
mov dword [ebp - 0x30], edx
cmp edx, eax
je 0x419717
mov ecx, dword [ecx]
call fcn.00418380
mov eax, dword [ebp - 0x2c]
test eax, eax
jle 0x419706
mov ecx, eax
call fcn.0041b240
mov ecx, eax
mov eax, dword [ebp - 0x2c]
jmp 0x419708
xor ecx, ecx
mov edx, dword [ebp - 0x44]
mov dword [edx], ecx
mov ecx, edx
mov edx, eax
mov dword [ebp - 0x30], eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x44]
lea esi, [ebp - 0xac]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a4], esi
lea esi, [ebp - 0x88]
mov dword [ebp - 0x1a0], esi
lea esi, [ebp - 0xa4]
mov ecx, dword [eax]
mov eax, edx
cdq
sub eax, edx
mov dword [ebp - 0xac], ecx
and eax, 0xfffffffe
mov dword [ebp - 0x19c], esi
xor edx, edx
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x41978b
mov edi, eax
nop
mov eax, dword [ebp - 0x80]
movups xmm1, xmmword [eax + edx*8]
mov eax, dword [ebp - 0x84]
mulpd xmm1, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm1
add edx, 2
cmp edx, edi
jge 0x419785
mov ecx, dword [ebp - 0xac]
jmp 0x419760
mov edi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
push dword [ebp - 0x30]
mov edx, eax
lea ecx, [ebp - 0x1a4]
call fcn.004215b0
mov ecx, dword [ebp - 0x6c]
add esp, 4
mov eax, dword [ecx]
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0xd
mov eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x2c], eax
mov edx, dword [ecx + 4]
mov dword [ebp - 0x40], edx
cmp edx, eax
je 0x4197ea
mov ecx, dword [ecx]
call fcn.00418380
mov eax, dword [ebp - 0x2c]
test eax, eax
jle 0x4197d9
mov ecx, eax
call fcn.0041b240
mov ecx, eax
mov eax, dword [ebp - 0x2c]
jmp 0x4197db
xor ecx, ecx
mov edx, dword [ebp - 0x54]
mov dword [edx], ecx
mov ecx, edx
mov edx, eax
mov dword [ebp - 0x40], eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x54]
lea esi, [ebp - 0x58]
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xd0], esi
lea esi, [ebp - 0x30]
mov dword [ebp - 0xcc], esi
lea esi, [ebp - 0xa5]
mov ecx, dword [eax]
mov eax, edx
cdq
sub eax, edx
mov dword [ebp - 0xc8], esi
mov esi, dword [ebp - 0x48]
and eax, 0xfffffffe
xor edx, edx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x41984d
mov edi, eax
nop dword [eax]
mov eax, dword [ebp - 0x30]
movups xmm0, xmmword [eax + edx*8]
movups xmmword [ecx + edx*8], xmm0
add edx, 2
cmp edx, edi
jge 0x419847
mov ecx, dword [ebp - 0x58]
jmp 0x419830
mov edi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
push dword [ebp - 0x40]
mov edx, eax
lea ecx, [ebp - 0xd0]
call fcn.00420a70
mov ecx, dword [ebp - 0x44]
add esp, 4
mov byte [ebp - 4], 0
call fcn.00419d00
mov ecx, dword [ebp - 0x50]
movaps xmm2, xmm0
movsd xmm0, qword [ebp - 0xf0]
movsd xmm3, qword [ebp - 0x60]
movsd xmm4, qword [ebp - 0x68]
inc dword [ecx + 0x88]
movsd xmm5, qword [ebp - 0x28]
movsd xmm7, qword [0x530d48]
movsd qword [ebp - 0x140], xmm2
movsd qword [ecx + 0x48], xmm0
jmp 0x4198ae
movsd xmm2, qword [ebp - 0x140]
movaps xmm0, xmm4
call fcn.00402ff0
movsd xmm1, qword [ecx + 0x68]
lea edx, [ecx + 0x90]
comisd xmm1, xmm0
movsd xmm6, qword [0x530d98]
jb 0x4198fb
movaps xmm0, xmm1
comisd xmm0, xmm5
jb 0x4198fb
movaps xmm0, xmm3
mulsd xmm0, qword [0x530d80]
comisd xmm6, xmm0
jb 0x4198fb
movaps xmm0, xmm2
mulsd xmm0, qword [ecx + 0x70]
comisd xmm0, xmmword [edx]
jae 0x419996
movaps xmm0, xmm4
call fcn.00402ff0
movsd xmm1, qword [ecx + 0x68]
comisd xmm1, xmm0
jb 0x419928
movaps xmm0, xmm1
comisd xmm0, xmm5
jb 0x419928
movaps xmm0, xmm3
mulsd xmm0, qword [0x530d80]
comisd xmm6, xmm0
jae 0x4199a6
movaps xmm1, xmm2
mulsd xmm1, qword [ecx + 0x70]
comisd xmm1, xmmword [edx]
jae 0x4199f3
mov eax, dword [ecx + 0x3c]
cmp eax, dword [ecx + 0x60]
jge 0x4199e9
movaps xmm0, xmm4
call fcn.00402ff0
movsd xmm1, qword [0x530d20]
comisd xmm1, xmm0
jb 0x419973
comisd xmm1, xmm5
jb 0x419973
movaps xmm0, xmm3
mulsd xmm0, qword [0x530d80]
comisd xmm6, xmm0
jae 0x4199b6
movaps xmm0, xmm2
mulsd xmm0, xmm1
comisd xmm0, xmmword [edx]
jae 0x4199d8
comisd xmm1, xmmword [ecx + 0x50]
jae 0x4199c7
comisd xmm7, xmm3
ja 0x418f90
or esi, 0xffffffff
jmp 0x419a02
mov edx, 0xd4
xor eax, eax
mov esi, 3
add ecx, edx
jmp 0x419a00
mov edx, 0xd4
xor eax, eax
mov esi, 1
add ecx, edx
jmp 0x419a00
mov dword [ecx + 0xd4], 0
mov esi, 6
jmp 0x419a02
mov dword [ecx + 0xd4], 0
mov esi, 8
jmp 0x419a02
mov dword [ecx + 0xd4], 0
mov esi, 7
jmp 0x419a02
mov esi, 5
lea eax, [esi - 3]
jmp 0x4199fa
mov esi, 2
xor eax, eax
add ecx, 0xd4
mov dword [ecx], eax
lea ecx, [ebp - 0x238]
call fcn.00419a40
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00443e26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.00417e70
int3