Function at 0x638fb0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x28
push esi
mov esi, ecx
mov ax, word [esi + 0x80]
cmp ax, 0x3e
push edi
je 0x6390cb
cmp ax, 0x3f
je 0x6390cb
cmp ax, 0x3a
je 0x6390cb
cmp ax, 0x3c
je 0x6390cb
cmp ax, 0x3b
je 0x6390cb
cmp ax, 0x3d
je 0x6390cb
cmp ax, 0x40
je 0x6390cb
cmp ax, 0x41
je 0x6390cb
mov eax, dword [esi + 0x14d0]
movzx ecx, word [eax + 0xd4]
mov edx, dword [eax + 0xcc]
mov eax, dword [esi + 0xb40]
push ecx
push edx
add eax, 8
push eax
push str.__s_:_Cancelling_GetIn__WRONG_ANIM__Car__i___u__r_n
call fcn.00569b60
mov eax, dword [esi + 0x14d0]
xor edi, edi
add esp, 0x10
cmp eax, edi
je 0x639067
push str.__ExitCar___r_n
call fcn.00569b60
add esp, 4
push edi
mov ecx, esi
call fcn.00637ee0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push str.__No_Car._Forcing_normal_mode_r_n
call fcn.00569b60
add esp, 4
lea ecx, [esi + 0x250]
call fcn.00402490
lea ecx, [esi + 0x470]
call fcn.00402490
mov ecx, esi
mov byte [esi + 9], 1
call fcn.0050e9b0
push edi
push edi
mov ecx, esi
call fcn.005ef940
fld dword [esi + 0x1e0]
fcomp dword [0x68b4fc]
push edi
push 0xffffffffffffffff
mov ecx, esi
push 0xffffffffffffffff
fnstsw ax
test ah, 0x41
jnp 0x63921b
push 0x14
push 0x56
call fcn.00632af0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x14d0]
mov ecx, dword [esi + 0xb40]
mov edx, dword [eax + 0x174]
cmp edx, dword [ecx + 0x24]
jne 0x63922d
movzx edx, word [eax + 0xd4]
mov eax, dword [eax + 0xcc]
push edx
push eax
add ecx, 8
push ecx
push str.__s_:_Cancelling_GetIn_Car__i___u__r_n
call fcn.00569b60
add esp, 0x10
mov ecx, esi
call fcn.005022c0
test al, al
mov ecx, dword [esi + 0x14d0]
je 0x63911b
push 0x10
jmp 0x63911d
push 0x11
call fcn.005ef7a0
xor edi, edi
cmp eax, edi
je 0x639183
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x68b500]
movss dword [esp + 0x1c], xmm0
movaps xmm0, xmmword [esp + 0x10]
shufps xmm0, xmm0, 0x39
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x39
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x39
movaps xmmword [eax + 0x10], xmm2
movaps xmmword [eax + 0x20], xmm1
movaps xmmword [eax + 0x30], xmm0
mov ecx, dword [esi + 0x14d0]
mov dword [ecx + 0x174], 0xffffffff
mov eax, dword [esi + 0x14d0]
mov ecx, dword [eax + 0x2a8]
cmp ecx, edi
je 0x6391dc
mov eax, ecx
mov dword [esp + 0x10], 0x3ea
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
mov ecx, dword [eax]
cmp ecx, edi
je 0x6391dc
lea edx, [esp + 0x10]
push edx
push 0xb
push eax
call ecx
add esp, 0xc
mov eax, dword [esi + 4]
or eax, 0x80
lea ecx, [esi + 0xe80]
mov dword [esi + 4], eax
call fcn.00401ee0
mov ecx, esi
mov byte [esi + 9], 1
call fcn.0050e9b0
fld dword [esi + 0x1e0]
fcomp dword [0x68b4fc]
push edi
push 0xffffffffffffffff
mov ecx, esi
push 0xffffffffffffffff
fnstsw ax
test ah, 0x41
jp 0x6390bc
push 5
push 0x12b
call fcn.00632af0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp edx, 0xffffffff
jne 0x639245
push str.Ignoring_CancelGetIn___call___already_in_the_car__r_n
call fcn.00569b60
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push str.Ignoring_CancelGetIn___call___someone_else_is_stealing_it__not_us__r_n
call fcn.00569b60
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret