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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10]
cmp eax, dword [ecx + 8]
jbe 0x406948
sub esp, 0x90
mov eax, dword [esp + 0x94]
test eax, eax
je 0x406923
mov ecx, dword [eax + 8]
cmp ecx, 0xb31a546d
ja 0x4065b6
cmp ecx, 0x7925028c
ja 0x4063c5
cmp ecx, 0x2ea27ffb
ja 0x4062bb
cmp ecx, 0x13ff06c5
jne 0x4062a9
lea edx, [0x657f40]
cmp edx, eax
jne 0x406298
mov edx, dword [esp + 0x98]
movzx ebx, byte [edx]
je 0x40627b
cmp ecx, 0x2ea27ffb
jne 0x4061b2
lea ecx, [0x658340]
cmp ecx, eax
jne 0x40626c
fld qword [edx]
fld st(0)
fstp qword [esp + 0x78]
fld qword [esp + 0x78]
fstp st(1)
fld st(0)
fstp qword [esp + 0x68]
fstp st(0)
je 0x406250
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
call fcn.004492a0
mov eax, dword [esp + 8]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x80], ecx
call fcn.0042bd10
lea eax, [0x6a1599]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0042c6e0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 4], eax
call fcn.0042c6e0
lea eax, [0x6a15d6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0042c6e0
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
call fcn.0042c820
call fcn.0042bd80
add esp, 0x90
ret
call fcn.0042bd10
fld qword [esp + 0x68]
fld st(0)
fstp qword [esp]
fstp st(0)
call fcn.0042bfd0
call fcn.0042bd80
jmp 0x406249
fldz
fld st(0)
fstp qword [esp + 0x68]
fstp st(0)
jmp 0x4061ac
mov byte [esp + 0x12], bl
call fcn.0042bd10
movzx eax, byte [esp + 0x12]
mov byte [esp], al
call fcn.0042bf70
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebx, 0
jmp 0x40617a
cmp ecx, 0x2ea27ffb
mov edx, dword [esp + 0x98]
jmp 0x406186
cmp ecx, 0x663e425f
jne 0x4063b3
lea edx, [0x659d80]
cmp edx, eax
jne 0x4063a2
mov edx, dword [esp + 0x98]
movzx ebx, byte [edx]
je 0x406377
cmp ecx, 0x7925028c
jne 0x4061b2
lea ecx, [0x658000]
cmp ecx, eax
jne 0x406361
fld dword [edx + 4]
fld st(0)
fstp dword [esp + 0x54]
fld dword [edx]
fld st(0)
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fstp st(2)
fld st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0x50]
fstp st(1)
fld st(0)
fstp dword [esp + 0x1c]
fstp st(0)
fstp st(0)
jne 0x4061b2
call fcn.0042bd10
fld dword [esp + 0x1c]
fld st(0)
fstp st(1)
fld st(0)
fstp qword [esp]
fld dword [esp + 0x2c]
fstp st(1)
fld st(0)
fstp st(1)
fld st(0)
fstp qword [esp + 8]
fstp st(0)
call fcn.0042c370
call fcn.0042bd80
jmp 0x406249
fldz
fld st(0)
fstp dword [esp + 0x2c]
fldz
fld st(0)
fstp dword [esp + 0x1c]
fstp st(0)
fstp st(0)
jmp 0x406328
mov byte [esp + 0x11], bl
call fcn.0042bd10
movzx eax, byte [esp + 0x11]
movzx eax, al
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0042c3f0
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebx, 0
jmp 0x4062df
cmp ecx, 0x7925028c
mov edx, dword [esp + 0x98]
jmp 0x4062eb
cmp ecx, 0x963f9bff
ja 0x4064a4
cmp ecx, 0x86318d2e
jne 0x406492
lea edx, [0x659d40]
cmp edx, eax
jne 0x40647c
mov edx, dword [esp + 0x98]
mov ebx, dword [edx + 4]
mov ebp, dword [edx]
je 0x406451
cmp ecx, 0x963f9bff
jne 0x4061b2
lea ecx, [0x659100]
cmp ecx, eax
jne 0x406445
mov ecx, dword [edx]
mov ebx, dword [edx + 4]
jne 0x4061b2
mov dword [esp + 0x20], ecx
mov dword [esp + 0x30], ebx
call fcn.0042bd10
mov eax, dword [esp + 0x20]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
call fcn.0042c520
call fcn.0042bd80
jmp 0x406249
mov ecx, 0
mov ebx, 0
jmp 0x406414
mov dword [esp + 0x24], ebp
mov dword [esp + 0x34], ebx
call fcn.0042bd10
mov eax, dword [esp + 0x24]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.0042c3f0
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebp, 0
mov ebx, 0
jmp 0x4063f7
cmp ecx, 0x963f9bff
mov edx, dword [esp + 0x98]
jmp 0x4063ff
cmp ecx, 0xb0c23ed3
jne 0x4065a4
lea edx, [0x658300]
cmp edx, eax
jne 0x40658e
mov edx, dword [esp + 0x98]
fld dword [edx]
fld st(0)
fstp dword [esp + 0x54]
fld dword [esp + 0x54]
fstp st(1)
fld st(0)
fstp dword [esp + 0x40]
fstp st(0)
je 0x40656b
cmp ecx, 0xb31a546d
jne 0x4061b2
lea ecx, [0x657fc0]
cmp ecx, eax
jne 0x406555
fld qword [edx + 8]
fld st(0)
fstp qword [esp + 0x78]
fld qword [edx]
fld st(0)
fstp qword [esp + 0x70]
fld qword [esp + 0x70]
fstp st(2)
fld st(1)
fstp qword [esp + 0x58]
fld qword [esp + 0x78]
fstp st(1)
fld st(0)
fstp qword [esp + 0x60]
fstp st(0)
fstp st(0)
jne 0x4061b2
call fcn.0042bd10
fld qword [esp + 0x58]
fld st(0)
fstp qword [esp]
fld qword [esp + 0x60]
fstp st(1)
fld st(0)
fstp qword [esp + 8]
fstp st(0)
call fcn.0042c370
call fcn.0042bd80
jmp 0x406249
fldz
fld st(0)
fstp qword [esp + 0x58]
fldz
fld st(0)
fstp qword [esp + 0x60]
fstp st(0)
fstp st(0)
jmp 0x406524
call fcn.0042bd10
fld dword [esp + 0x40]
fld st(0)
fstp st(1)
fld st(0)
fstp qword [esp]
fstp st(0)
call fcn.0042bfd0
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
fldz
fld st(0)
fstp dword [esp + 0x40]
fstp st(0)
jmp 0x4064db
cmp ecx, 0xb31a546d
mov edx, dword [esp + 0x98]
jmp 0x4064e7
cmp ecx, 0xd04ae83d
ja 0x406743
cmp ecx, 0xbd4ad792
ja 0x406684
cmp ecx, 0xbbad4102
jne 0x406672
lea edx, [0x6590c0]
cmp edx, eax
jne 0x406661
mov edx, dword [esp + 0x98]
mov ebx, dword [edx]
je 0x40663b
cmp ecx, 0xbd4ad792
jne 0x4061b2
lea ecx, [0x659dc0]
cmp ecx, eax
jne 0x406634
mov ecx, dword [edx]
jne 0x4061b2
mov dword [esp + 0x44], ecx
call fcn.0042bd10
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0042c3f0
call fcn.0042bd80
jmp 0x406249
mov ecx, 0
jmp 0x406607
mov dword [esp + 0x38], ebx
call fcn.0042bd10
mov eax, dword [esp + 0x38]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.0042c520
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebx, 0
jmp 0x4065ed
cmp ecx, 0xbd4ad792
mov edx, dword [esp + 0x98]
jmp 0x4065f5
cmp ecx, 0xcc06c027
jne 0x406731
lea edx, [0x659140]
cmp edx, eax
jne 0x406720
mov edx, dword [esp + 0x98]
movzx ebx, byte [edx]
je 0x4066f6
cmp ecx, 0xd04ae83d
jne 0x4061b2
lea ecx, [0x659d00]
cmp ecx, eax
jne 0x4066ef
mov ecx, dword [edx]
jne 0x4061b2
mov dword [esp + 0x48], ecx
call fcn.0042bd10
mov eax, dword [esp + 0x48]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0042c3f0
call fcn.0042bd80
jmp 0x406249
mov ecx, 0
jmp 0x4066c2
mov byte [esp + 0x13], bl
call fcn.0042bd10
movzx eax, byte [esp + 0x13]
movsx eax, al
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.0042c520
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebx, 0
jmp 0x4066a8
cmp ecx, 0xd04ae83d
mov edx, dword [esp + 0x98]
jmp 0x4066b0
cmp ecx, 0xe0ff5cb4
ja 0x40681c
cmp ecx, 0xd5b87712
jne 0x40680a
lea edx, [0x659c80]
cmp edx, eax
jne 0x4067f9
mov edx, dword [esp + 0x98]
mov ebx, dword [edx]
je 0x4067d2
cmp ecx, 0xe0ff5cb4
jne 0x4061b2
lea ecx, [0x659b80]
cmp ecx, eax
jne 0x4067c6
mov ecx, dword [edx]
mov ebx, dword [edx + 4]
jne 0x4061b2
mov dword [esp + 0x84], ecx
mov dword [esp + 0x28], ebx
call fcn.0042bd10
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
call fcn.0042c6e0
call fcn.0042bd80
jmp 0x406249
mov ecx, 0
mov ebx, 0
jmp 0x40678f
mov dword [esp + 0x3c], ebx
call fcn.0042bd10
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0042c3f0
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebx, 0
jmp 0x406772
cmp ecx, 0xe0ff5cb4
mov edx, dword [esp + 0x98]
jmp 0x40677a
cmp ecx, 0xecd580ce
jne 0x406917
lea edx, [0x659080]
cmp edx, eax
jne 0x406906
mov edx, dword [esp + 0x98]
movzx ebx, word [edx]
je 0x4068db
cmp ecx, 0xeff20ea0
jne 0x40685d
lea ebx, [0x659cc0]
cmp ebx, eax
jne 0x4068d4
movzx ebx, word [edx]
je 0x4068a8
cmp ecx, 0xf75371fa
jne 0x4061b2
lea ecx, [0x659040]
cmp ecx, eax
jne 0x4068a1
mov ecx, dword [edx]
jne 0x4061b2
mov dword [esp + 0x4c], ecx
call fcn.0042bd10
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.0042c520
call fcn.0042bd80
jmp 0x406249
mov ecx, 0
jmp 0x406875
mov word [esp + 0x16], bx
call fcn.0042bd10
movzx eax, word [esp + 0x16]
movzx eax, ax
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0042c3f0
call fcn.0042bd80
jmp 0x406249
mov ebx, 0
jmp 0x40685b
mov word [esp + 0x14], bx
call fcn.0042bd10
movzx eax, word [esp + 0x14]
movsx eax, ax
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.0042c520
call fcn.0042bd80
jmp 0x406249
mov edx, dword [esp + 0x98]
mov ebx, 0
jmp 0x406840
mov edx, dword [esp + 0x98]
jmp 0x406846
call fcn.0042bd10
lea eax, [0x6a1957]
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.0042c6e0
call fcn.0042bd80
jmp 0x406249
call fcn.0044f4e0
jmp fcn.00406100