Function at 0x1002ba80
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
fld dword [ebp + 0x1c]
mov ecx, dword [ebp + 8]
fld st(0)
mov eax, dword [0x8128ac8]
fld qword [0x10080d60]
movzx eax, word [eax + ecx*2 + 0x78]
fmul st(1), st(0)
push edi
fxch st(1)
fstp dword [ebp - 0xc]
fld dword [ebp + 0x20]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [ebp - 0x10]
fld qword [0x10080d58]
fmul st(2), st(0)
fxch st(2)
fstp dword [ebp - 0x24]
fmulp st(1)
fstp dword [ebp - 0x20]
call fcn.1002b790
movzx edi, ax
test di, di
je 0x1002c7c0
mov edx, dword [0x8128abc]
push ebx
push esi
mov esi, edi
mov eax, edi
imul eax, eax, 0x58
mov bl, byte [eax + edx + 0x37]
mov dword [ebp - 0x1c], eax
movzx eax, word [eax + edx + 0x48]
push edi
mov ecx, 0x4ad0e0
mov byte [ebp + 0x1f], 0
mov byte [ebp + 0x23], bl
mov dword [ebp - 0x18], eax
call ecx
add esp, 4
test eax, eax
jne 0x1002bb0d
mov byte [ebp + 0x1f], 1
push esi
mov edx, 0x5b89c0
call edx
add esp, 4
test al, al
jne 0x1002bb20
mov byte [ebp + 0x1f], 1
mov ecx, dword [0x7bc4f04]
push 0x13
add ecx, 0x4ec
mov eax, 0x4c8640
call eax
test al, al
je 0x1002bb42
cmp bl, 2
jne 0x1002bb42
mov byte [ebp + 0x1f], 1
cmp edi, 0x2f
jne 0x1002bbd3
mov ecx, dword [0x7bc4f04]
movzx eax, word [ecx + 0x22c]
mov edx, 0x1e95
cmp ax, dx
jb 0x1002bb6c
mov ecx, 0x1e96
cmp ax, cx
jbe 0x1002bb7a
mov edx, 0x1eb8
cmp ax, dx
je 0x1002bb7a
mov byte [ebp + 0x1f], 1
mov ecx, 0x1e95
cmp ax, cx
je 0x1002bb9c
mov edx, 0x1e96
cmp ax, dx
je 0x1002bb9c
mov ecx, 0x1eb8
cmp ax, cx
jne 0x1002bc49
mov eax, dword [0x8128ac4]
movzx ecx, word [eax + 0x12ab]
movzx eax, word [eax + 0x1240]
cmp ecx, 0x600
jl 0x1002bbc3
cmp ecx, 0x800
jl 0x1002bc49
cmp eax, 0x600
jl 0x1002bc45
cmp eax, 0x800
jl 0x1002bc49
jmp 0x1002bc45
cmp edi, 0x12
jb 0x1002bc0c
cmp edi, 0x17
ja 0x1002bc0c
mov edx, dword [0x7bc4f04]
movzx eax, word [edx + 0x22c]
mov ecx, 0x1e95
cmp ax, cx
je 0x1002bc08
mov edx, 0x1e96
cmp ax, dx
je 0x1002bc08
mov ecx, 0x1eb8
cmp ax, cx
jne 0x1002bc0c
mov byte [ebp + 0x1f], 1
cmp edi, 0x38
je 0x1002bc1b
mov edx, 0x1e2
cmp di, dx
jne 0x1002bc49
mov eax, dword [0x7bc4f04]
movzx eax, word [eax + 0x22c]
mov ecx, 0x1e95
cmp ax, cx
je 0x1002bc45
mov edx, 0x1e96
cmp ax, dx
je 0x1002bc45
mov ecx, 0x1eb8
cmp ax, cx
jne 0x1002bc49
mov byte [ebp + 0x1f], 1
mov eax, dword [0x8128ac8]
movzx ecx, word [eax + 0x1e]
movzx esi, word [eax + 0x38]
add esi, ecx
mov edx, 0x588d70
mov dword [ebp - 0x14], esi
call edx
push 0
push esi
push edi
mov eax, 0x4e8d80
call eax
test al, al
je 0x1002bc75
mov byte [ebp + 0x1f], 1
cmp edi, 0x3f
jne 0x1002bcb5
cmp dword [0x81f6b6c], 0
ja 0x1002bc87
mov byte [ebp + 0x1f], 1
mov eax, dword [0xe61e18]
cmp eax, 0x41
je 0x1002bec7
cmp eax, 0x42
je 0x1002bec7
cmp eax, 0x43
je 0x1002bec7
cmp eax, 0x44
jne 0x1002becb
jmp 0x1002bec7
cmp edi, 0x3e
je 0x1002bcd8
mov ecx, 0x1fe
cmp di, cx
je 0x1002bcd8
mov edx, 0x204
cmp di, dx
je 0x1002bcd8
mov eax, 0x200
cmp di, ax
jne 0x1002bd2b
mov ecx, dword [0x8128ac4]
cmp byte [ecx + 0x15ae], 0
je 0x1002bd27
mov edx, dword [0x7bc4f04]
movzx eax, word [edx + 0x22c]
mov ecx, 0x1e97
cmp ax, cx
je 0x1002bd2b
sub eax, 0x493
mov dword [ebp - 8], eax
lea ebx, [ebp - 8]
lea eax, [ebp - 4]
mov ecx, 0x104d0acc
call fcn.10027120
mov eax, dword [ebp - 4]
cmp eax, dword [0x104d0ad0]
je 0x1002bd27
cmp dword [eax + 0x1c], 6
je 0x1002bd2b
mov byte [ebp + 0x1f], 1
cmp edi, 0x4d
je 0x1002bd5c
mov eax, 0xe9
cmp di, ax
je 0x1002bd5c
mov ecx, 0x17c
cmp di, cx
je 0x1002bd5c
mov edx, 0x17f
cmp di, dx
je 0x1002bd5c
mov eax, 0x1b9
cmp di, ax
jne 0x1002bdf7
mov ecx, 0x588d70
call ecx
push 0
push esi
push edi
mov edx, 0x4e8d80
call edx
test al, al
je 0x1002bd76
mov byte [ebp + 0x1f], 1
mov ecx, dword [0x7bc4f04]
push 6
add ecx, 0x4ec
mov eax, 0x4c8640
call eax
test al, al
jne 0x1002bdf3
mov ecx, dword [0x7bc4f04]
push 0xffffffffffffff8f
add ecx, 0x4ec
mov edx, 0x4c8640
call edx
test al, al
jne 0x1002bdf3
mov ecx, dword [0x7bc4f04]
push 0x52
add ecx, 0x4ec
mov eax, 0x4c8640
call eax
test al, al
jne 0x1002bdf3
mov ecx, dword [0x7bc4f04]
push 0xffffffffffffff8a
add ecx, 0x4ec
mov edx, 0x4c8640
call edx
test al, al
jne 0x1002bdf3
mov ecx, dword [0x7bc4f04]
push 0xffffffffffffff8b
add ecx, 0x4ec
mov eax, 0x4c8640
call eax
test al, al
je 0x1002bdf7
mov byte [ebp + 0x1f], 1
cmp edi, 0x37
je 0x1002be06
mov ecx, 0x1ea
cmp di, cx
jne 0x1002be59
mov eax, dword [0x8128ac8]
mov dx, word [eax + 0x32]
add dx, word [eax + 0x18]
mov eax, 0x254
cmp dx, ax
jae 0x1002be21
mov byte [ebp + 0x1f], 1
mov eax, dword [0x8128ac4]
movzx ecx, word [eax + 0x12ab]
movzx eax, word [eax + 0x1240]
cmp eax, 0xffffffff
je 0x1002be55
cmp eax, 0xa00
jl 0x1002be47
cmp eax, 0xc00
jl 0x1002be55
add ecx, 0xfffff600
cmp ecx, 0x1ff
ja 0x1002be59
mov byte [ebp + 0x1f], 1
cmp edi, 0x33
je 0x1002be68
mov ecx, 0x1a8
cmp di, cx
jne 0x1002be83
mov eax, dword [0x8128ac8]
mov dx, word [eax + 0x34]
add dx, word [eax + 0x1a]
mov eax, 0x286
cmp dx, ax
jae 0x1002be83
mov byte [ebp + 0x1f], 1
cmp edi, 0x29
je 0x1002bea6
mov ecx, 0x14a
cmp di, cx
je 0x1002bea6
mov edx, 0x1e1
cmp di, dx
je 0x1002bea6
mov eax, 0x14c
cmp di, ax
jne 0x1002becb
mov ecx, dword [0x7bc4f04]
movzx eax, word [ecx + 0x1c0]
mov edx, 0x493
cmp ax, dx
jb 0x1002bec7
mov ecx, 0xc00
cmp ax, cx
jbe 0x1002becb
mov byte [ebp + 0x1f], 1
mov edx, dword [0xe61e18]
push edx
mov eax, 0x4e65a0
call eax
add esp, 4
cmp al, 1
jne 0x1002bf12
cmp edi, 0x3e
je 0x1002bf44
cmp edi, 0x31
je 0x1002bf44
mov ecx, 0x1fe
cmp di, cx
je 0x1002bf44
mov edx, 0x204
cmp di, dx
je 0x1002bf44
cmp edi, 0x78
jb 0x1002bf08
cmp edi, 0x7b
jbe 0x1002bf44
mov eax, 0x200
cmp di, ax
jmp 0x1002bf42
cmp edi, 0x3e
je 0x1002bf35
mov ecx, 0x1fe
cmp di, cx
je 0x1002bf35
mov edx, 0x204
cmp di, dx
je 0x1002bf35
mov eax, 0x200
cmp di, ax
jne 0x1002bf48
mov ecx, dword [0x8128ac4]
cmp byte [ecx + 0x15ae], 0
jne 0x1002bf48
mov byte [ebp + 0x1f], 1
mov eax, dword [0x8128ac8]
movzx esi, word [eax + 0x3e]
movzx edx, word [eax + 0x20]
mov eax, 0x588d70
add esi, edx
call eax
mov ecx, dword [ebp - 0x14]
push esi
push ecx
mov ebx, edi
push ebx
mov edx, 0x4e8d80
call edx
test al, al
je 0x1002bf75
mov byte [ebp + 0x1f], 1
push ebx
mov eax, 0x5111d0
call eax
test al, al
jne 0x1002bf85
mov byte [ebp + 0x1f], 1
mov ecx, dword [0x7bc4f04]
movzx edx, word [ecx + 0x22c]
push edx
push ebx
mov eax, 0x511110
call eax
test al, al
je 0x1002bfa3
mov byte [ebp + 0x1f], 1
mov eax, dword [0x8128ac4]
mov ecx, dword [eax + 0x1670]
mov edx, dword [eax + 0x16db]
push ecx
movzx ecx, word [eax + 0x166e]
push edx
movzx edx, word [eax + 0x16d9]
push ecx
push edx
mov eax, 0x511290
call eax
test al, al
je 0x1002bfee
mov ecx, dword [0x7bc4f04]
movzx edx, byte [ecx + 0x13]
push edx
mov eax, 0x405230
call eax
add esp, 4
cmp al, 6
jne 0x1002bfee
mov byte [ebp + 0x1f], 1
fldz
mov ecx, 0x588d70
fst dword [ebp - 8]
xor esi, esi
fstp dword [ebp - 4]
call ecx
push ebx
mov edx, 0x4eac90
call edx
test al, al
jne 0x1002c00f
mov byte [ebp + 0x1f], 1
mov eax, 0x588d70
call eax
push ebx
mov ecx, 0x4eac90
call ecx
test al, al
jne 0x1002c026
mov byte [ebp + 0x1f], 1
fld dword [ebp + 0x18]
lea edx, [edi - 0x78]
fld dword [ebp + 0x14]
fld dword [ebp - 0xc]
fld dword [ebp - 0x10]
cmp dx, 4
ja 0x1002c08a
lea eax, [ebx - 0x78]
mov ecx, eax
and ecx, 0x80000007
jns 0x1002c04d
dec ecx
or ecx, 0xfffffff8
inc ecx
mov dword [ebp + 0x1c], ecx
fild dword [ebp + 0x1c]
cdq
and edx, 7
add eax, edx
fmul st(3)
sar eax, 3
mov dword [ebp + 0x1c], eax
mov edx, dword [0x7bc4f04]
fdiv st(2)
cmp dword [edx + 0x2a4], esi
mov esi, 1
fstp dword [ebp - 8]
fild dword [ebp + 0x1c]
sete byte [ebp + 0x1f]
fmul st(4)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
cmp edi, 0x4c
jne 0x1002c0a9
fld st(2)
lea esi, [edi - 0x4b]
fmul qword [0x10080108]
fdiv st(2)
fstp dword [ebp - 8]
fldz
fstp dword [ebp - 4]
jmp 0x1002c2eb
lea eax, [edi - 0xd6]
cmp ax, 3
ja 0x1002c0ec
add ebx, 0xffffff2a
and ebx, 0x80000007
jns 0x1002c0c8
dec ebx
or ebx, 0xfffffff8
inc ebx
mov dword [ebp + 0x20], ebx
fild dword [ebp + 0x20]
mov esi, 3
fmul st(3)
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
lea ecx, [edi - 0xdb]
cmp cx, 1
ja 0x1002c12f
add ebx, 0xffffff29
and ebx, 0x80000007
jns 0x1002c10b
dec ebx
or ebx, 0xfffffff8
inc ebx
mov dword [ebp + 0x20], ebx
fild dword [ebp + 0x20]
mov esi, 3
fmul st(3)
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
mov edx, 0xda
cmp di, dx
jne 0x1002c15d
fld st(2)
mov esi, 3
fmul qword [0x1007fd58]
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
lea eax, [edi - 0xdd]
cmp ax, 1
ja 0x1002c193
add ebx, 0xffffff2b
mov dword [ebp + 0x20], ebx
fild dword [ebp + 0x20]
mov esi, 3
fmul st(3)
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
lea ecx, [edi - 0xdf]
cmp cx, 1
ja 0x1002c1d6
add ebx, 0xffffff27
and ebx, 0x80000007
jns 0x1002c1b2
dec ebx
or ebx, 0xfffffff8
inc ebx
mov dword [ebp + 0x20], ebx
fild dword [ebp + 0x20]
mov esi, 3
fmul st(3)
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
mov edx, 0xe1
cmp di, dx
jne 0x1002c204
fld st(2)
mov esi, 3
fmul qword [0x10080468]
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
mov eax, 0xe8
cmp di, ax
jne 0x1002c22e
fld st(2)
mov esi, 3
fmul qword [0x1007fd10]
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fadd st(0), st(0)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
mov ecx, 0x20b
cmp di, cx
je 0x1002c2eb
lea eax, [ebx - 0xe6]
cmp eax, 0xe2
ja case.0x1002c254.231
movzx edx, byte [eax + 0x1002c7ec]
jmp dword [edx*4 + 0x1002c7c8]
fld st(2)
fmul qword [0x1007fe80]
fdiv st(2)
mov esi, 3
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fd00]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
fld st(2)
mov esi, 3
fmul qword [0x10080bf8]
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fadd st(0), st(0)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
fstp st(2)
mov eax, 0x587a80
fstp st(2)
fstp st(1)
fstp st(0)
call eax
test eax, eax
jne 0x1002c2b0
mov byte [ebp + 0x1f], 1
fld dword [ebp + 0x14]
mov esi, 3
fld qword [0x1007fe68]
fmul st(1)
fld dword [ebp - 0xc]
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [ebp - 8]
fld dword [ebp + 0x18]
fld qword [0x1007fd00]
fmul st(1)
fld dword [ebp - 0x10]
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [ebp - 4]
fxch st(1)
fxch st(3)
fxch st(2)
fxch st(1)
mov edx, dword [0x8128abc]
add edx, dword [ebp - 0x1c]
je 0x1002c301
cmp byte [edx + 0x37], 4
jne 0x1002c301
mov esi, 5
lea eax, [esi - 1]
cmp eax, 4
ja case.default.0x1002c30d
jmp dword [eax*4 + 0x1002c8d0]
mov eax, dword [0x8128ac4]
movzx ecx, word [eax + 0x12ab]
movzx eax, word [eax + 0x1240]
cmp eax, 0xffffffff
je 0x1002c348
cmp eax, 0xa00
jl 0x1002c33a
cmp eax, 0xc00
jl 0x1002c348
add ecx, 0xfffff600
cmp ecx, 0x1ff
ja 0x1002c34c
mov byte [ebp + 0x1f], 1
fld st(2)
jmp 0x1002c263
fld st(2)
fadd st(0), st(0)
jmp 0x1002c263
fld st(2)
mov esi, 3
fadd st(0), st(0)
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fmul qword [0x1007fe80]
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
fld st(2)
fmul qword [0x10080140]
jmp 0x1002c263
fld st(2)
mov esi, 3
fmul qword [0x1007fd00]
fdiv st(2)
fstp dword [ebp - 8]
fld st(3)
fadd st(0), st(0)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
cmp byte [ebp + 0x23], 4
jne 0x1002c3f6
mov ecx, dword [ebp - 0x18]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*2]
add edx, edx
add edx, edx
sub ecx, edx
mov dword [ebp + 0x20], ecx
add eax, 4
mov esi, 3
fild dword [ebp + 0x20]
mov dword [ebp + 0x20], eax
fld st(3)
fdiv st(3)
fmulp st(1)
fstp dword [ebp - 8]
fld st(3)
fdiv st(1)
fild dword [ebp + 0x20]
fmulp st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
mov eax, 0x104
cmp di, ax
jae 0x1002c487
cmp edi, 0x39
jae 0x1002c448
lea eax, [ebx - 1]
mov ecx, eax
and ecx, 0x80000007
jns 0x1002c41b
dec ecx
or ecx, 0xfffffff8
inc ecx
mov dword [ebp + 0x20], ecx
fild dword [ebp + 0x20]
cdq
and edx, 7
add eax, edx
fmul st(3)
sar eax, 3
mov dword [ebp + 0x20], eax
mov esi, 2
fdiv st(2)
fstp dword [ebp - 8]
fild dword [ebp + 0x20]
fmul st(4)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
lea eax, [ebx - 0x39]
mov edx, eax
and edx, 0x80000007
jns 0x1002c45a
dec edx
or edx, 0xfffffff8
inc edx
mov dword [ebp + 0x20], edx
fild dword [ebp + 0x20]
cdq
and edx, 7
add eax, edx
fmul st(3)
sar eax, 3
mov dword [ebp + 0x20], eax
mov esi, 3
fdiv st(2)
fstp dword [ebp - 8]
fild dword [ebp + 0x20]
fmul st(4)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
lea eax, [ebx - 0x104]
cdq
mov ecx, 0xc
idiv ecx
lea esi, [ecx - 8]
mov dword [ebp + 0x20], edx
fild dword [ebp + 0x20]
mov dword [ebp - 0x18], eax
fmul st(3)
fdiv st(2)
fstp dword [ebp - 8]
fild dword [ebp - 0x18]
fmul st(4)
fdiv st(1)
fstp dword [ebp - 4]
jmp 0x1002c2eb
cmp byte [ebp + 0x1f], 1
mov ecx, 0x7a4e
jne 0x1002c50f
mov ecx, 0x7a54
jmp 0x1002c50f
cmp byte [ebp + 0x1f], 1
mov ecx, 0x7a4c
jne 0x1002c50f
mov ecx, 0x7a52
jmp 0x1002c50f
cmp byte [ebp + 0x1f], 1
mov ecx, 0x7a4d
jne 0x1002c50f
mov ecx, 0x7a53
jmp 0x1002c50f
cmp byte [ebp + 0x1f], 1
mov ecx, 0x7a4f
jne 0x1002c50f
mov ecx, 0x7a55
jmp 0x1002c50f
cmp byte [ebp + 0x1f], 1
mov ecx, 0x7b2e
jne 0x1002c50f
mov ecx, 0x7b2f
test edx, edx
je 0x1002c5dc
cmp byte [edx + 0x37], 4
jne 0x1002c5dc
movzx eax, word [edx + 0x48]
fstp st(1)
fstp st(0)
cdq
fld st(1)
fdiv dword [ebp - 0x20]
mov esi, 0x19
idiv esi
push ecx
fld st(1)
fdiv dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
fldz
fstp dword [esp]
fxch st(1)
fst dword [ebp + 0x20]
push 1
fld dword [ebp + 0x20]
push 1
sub esp, 0x18
fstp dword [esp + 0x14]
fxch st(1)
fst dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 0x10]
fild dword [ebp - 0x24]
fmulp st(2)
fxch st(1)
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 0xc]
fimul dword [ebp - 0x20]
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 8]
fld dword [0xe7c3d8]
fmulp st(2)
fxch st(1)
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fdiv dword [0xe7c3d8]
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.10066230
fdiv dword [0xe7c3d4]
sub esp, 8
mov edx, 0x637c60
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 8]
fld dword [ebp + 0x10]
fstp dword [esp + 4]
fld dword [ebp + 0xc]
fstp dword [esp]
push ecx
call edx
add esp, 0x30
jmp 0x1002c66c
fldz
push ecx
fstp dword [esp]
push 1
push 1
fdivr st(3)
sub esp, 0x18
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 0x14]
fdivr st(1)
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 0x10]
fld dword [ebp - 4]
fstp dword [esp + 0xc]
fld dword [ebp - 8]
fstp dword [esp + 8]
fld dword [0xe7c3d8]
fmulp st(2)
fxch st(1)
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fdiv dword [0xe7c3d8]
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.10066230
fdiv dword [0xe7c3d4]
sub esp, 8
mov eax, 0x637c60
fstp dword [ebp + 0x20]
fld dword [ebp + 0x20]
fstp dword [esp + 8]
fld dword [ebp + 0x10]
fstp dword [esp + 4]
fld dword [ebp + 0xc]
fstp dword [esp]
push ecx
call eax
add esp, 0x30
jmp 0x1002c66c
fstp st(2)
fstp st(2)
fstp st(1)
fstp st(0)
mov ecx, 0x106
pop esi
pop ebx
cmp di, cx
je 0x1002c6a0
mov edx, 0x109
cmp di, dx
je 0x1002c6a0
mov eax, 0x108
cmp di, ax
je 0x1002c6a0
mov ecx, 0x22e
cmp di, cx
je 0x1002c6a0
mov edx, 0x230
cmp di, dx
jne 0x1002c6aa
cmp byte [ebp + 0x1f], 0
jne 0x1002c7c0
cmp edi, 0x4d
je 0x1002c7c0
mov eax, 0xe9
cmp di, ax
je 0x1002c7c0
mov ecx, 0x17c
cmp di, cx
je 0x1002c7c0
mov edx, 0x17f
cmp di, dx
je 0x1002c7c0
mov eax, 0x1b9
cmp di, ax
je 0x1002c7c0
mov edx, dword [ebp + 8]
mov eax, dword [0x8128ac8]
mov ecx, dword [eax + edx*4 + 0x818]
mov dword [ebp + 8], ecx
test ecx, ecx
jle 0x1002c7c0
movzx ecx, word [eax + edx*2 + 0x78]
fild dword [ebp + 8]
mov edx, dword [0x8128abc]
imul ecx, ecx, 0x58
push 1
fidiv dword [ecx + edx + 0x2c]
mov eax, 0x635fd0
fstp dword [ebp + 8]
call eax
fld dword [0x1007fcf4]
fst dword [esp]
sub esp, 0xc
fst dword [esp + 8]
fstp dword [esp + 4]
fld1
fstp dword [esp]
call dword [0x1007b220]
fld dword [ebp + 8]
fmul dword [ebp + 0x18]
push 0
sub esp, 0xc
fstp dword [ebp + 8]
fldz
fstp dword [esp + 8]
fld dword [0xe7c3d8]
fmul dword [ebp + 8]
fstp dword [ebp + 0x1c]
fld dword [ebp + 0x1c]
fdiv dword [0xe7c3d8]
fstp dword [ebp + 0x1c]
fld dword [ebp + 0x1c]
fstp dword [esp + 4]
fld dword [ebp + 0x14]
fstp dword [esp]
call fcn.10066230
fdiv dword [0xe7c3d4]
sub esp, 8
mov ecx, 0x6378a0
fstp dword [ebp + 0x1c]
fld dword [ebp + 0x1c]
fstp dword [esp + 8]
fld dword [ebp + 0x10]
fadd dword [ebp + 0x18]
fsub dword [ebp + 8]
fstp dword [ebp + 8]
fld dword [ebp + 8]
fstp dword [esp + 4]
fld dword [ebp + 0xc]
fstp dword [esp]
call ecx
add esp, 0x18
mov edx, 0x637a30
call edx
pop edi
mov esp, ebp
pop ebp
ret