Function at 0x1000cc20
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100e56be
mov eax, dword fs:[0]
push eax
sub esp, 0xb8
mov eax, dword [0x10145188]
xor eax, esp
mov dword [esp + 0xb0], eax
push ebx
push esi
push edi
mov eax, dword [0x10145188]
xor eax, esp
push eax
lea eax, [esp + 0xc8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, ecx
cmp eax, 0x17ae
ja 0x1000d05a
je 0x1000cec9
cmp eax, 0x201
je 0x1000cde8
cmp eax, 0x17ac
jne 0x1000d07f
cmp byte [edi + 0x1b0], 0
je 0x1000d07f
mov ebx, dword [ebp + 0xc]
cmp ebx, 0x3b
je 0x1000cd16
cmp ebx, 0x3f
je 0x1000cd20
cmp ebx, 0x3e
je 0x1000cd16
cmp ebx, 0x40
je 0x1000cd16
cmp ebx, 0x42
je 0x1000cd16
cmp ebx, 0x16
jne 0x1000d07f
lea eax, [esp + 0x6c]
push eax
call fcn.1000ff50
lea ecx, [esp + 0x6c]
push ecx
mov esi, 2
push ebx
mov dword [esp + 0xd8], esi
call dword [sym.imp.RJDataBase.dll_int___cdecl_RJCDATABASE::cm_tch_get_class_info_unsigned_int__long_int_]
add esp, 8
cmp dword [esp + 0x6c], esi
je 0x1000cd08
lea esi, [edi - 0x794]
call fcn.1000c450
mov edx, dword [0x101489d4]
mov ecx, dword [edx + 0x20]
push 0
push 0
push 0
call fcn.10054d80
lea esi, [esp + 0x6c]
call fcn.1000d0b0
jmp 0x1000d07f
cmp ebx, 0x3f
je 0x1000cd20
cmp ebx, 0x3e
jne 0x1000cd33
mov eax, dword [0x101489d4]
mov ecx, dword [eax + 0x20]
mov esi, dword [ecx + 0x468]
call fcn.10066c60
push ebx
add edi, 0xfffff86c
push edi
call fcn.1000d140
lea esi, [esp + 0x28]
call fcn.10010190
mov edx, esi
push edx
push 0x3b
mov dword [esp + 0xd8], 0
call dword [sym.imp.RJDataBase.dll_int___cdecl_RJCDATABASE::cm_tch_get_class_info_unsigned_int__long_int_]
add esp, 8
lea eax, [esp + 0x48]
push eax
call fcn.1000ffe0
mov byte [esp + 0xd0], 1
mov ecx, dword [esp + 0x30]
push ecx
lea ecx, [esp + 0x4c]
call fcn.1000ddb0
cmp ebx, 0x42
jne 0x1000cdaa
cmp dword [esp + 0x4c], 1
jne 0x1000cdd1
push 0x100f0f3c
push 1
call dword [sym.imp.Common.dll_int___cdecl_COMMON::WriteLog_int__wchar_t_const__]
mov edx, dword [0x101489d4]
mov ecx, dword [edx + 0x20]
add esp, 8
push ebx
jmp 0x1000cdc8
cmp ebx, 0x40
jne 0x1000cdd1
push 0x100f0f58
push 1
call dword [sym.imp.Common.dll_int___cdecl_COMMON::WriteLog_int__wchar_t_const__]
mov eax, dword [0x101489d4]
mov ecx, dword [eax + 0x20]
add esp, 8
push ebx
push 0
push 0
call fcn.10054d80
lea esi, [esp + 0x48]
call fcn.10010110
lea eax, [esp + 0x28]
call fcn.1000c2b0
jmp 0x1000d07f
cmp byte [edi + 0x194], 0
jne 0x1000d07f
lea ecx, [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [edi + 0x14]
lea edx, [esp + 0x10]
push edx
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [edi + 0x198]
test ecx, ecx
je 0x1000d07f
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
mov edx, dword [eax + 8]
mov ecx, dword [eax + 4]
mov ebx, dword [eax]
mov eax, dword [eax + 0xc]
lea esi, [edi - 0x794]
mov dword [esp + 0x30], edx
mov edx, dword [esi]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], eax
mov eax, dword [edx + 0x30]
mov ecx, esi
call eax
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
cmp eax, ebx
jle 0x1000ce9f
cmp eax, dword [esp + 0x30]
jge 0x1000ce9f
mov ecx, dword [esp + 0x14]
cmp ecx, dword [esp + 0x2c]
jle 0x1000cea3
cmp ecx, dword [esp + 0x34]
jge 0x1000cea3
mov ecx, dword [edi + 0x198]
mov eax, dword [ecx]
mov edx, dword [eax + 0xd8]
call edx
test al, al
jne 0x1000d07f
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
cmp eax, dword [esp + 0x18]
jle 0x1000cebf
cmp eax, dword [esp + 0x20]
jge 0x1000cebf
cmp ecx, dword [esp + 0x1c]
jle 0x1000cebf
cmp ecx, dword [esp + 0x24]
jl 0x1000d07f
call fcn.1000c450
jmp 0x1000d07f
mov eax, dword [ebp + 0xc]
cmp eax, 3
jne 0x1000cee4
mov ecx, dword [ebp + 0x10]
lea edx, [edi - 0x794]
call fcn.1000e6c0
jmp 0x1000d07f
cmp eax, 0xa
jne 0x1000d07f
mov esi, dword [ebp + 0x10]
mov byte [edi + 0x194], 1
test esi, esi
je 0x1000cfd9
cmp esi, 3
je 0x1000cfd9
mov eax, dword [edi + 0x1a4]
mov ecx, dword [edi + 0x1a0]
push esi
push eax
push ecx
push str.check_tmpl_err_id__d____model__d__error__d_
push 1
call dword [sym.imp.Common.dll_int___cdecl_COMMON::WriteLog_int__wchar_t_const__]
add esp, 0x14
cmp esi, 2
jne 0x1000cf84
push str.ChooseImg_29
call dword [sym.imp.DuiLib_u.dll_public:_static_wchar_t_const____cdecl_DuiLib::CPaintManagerUI::GetStringById_wchar_t_const__]
add esp, 4
push eax
mov eax, dword [edi + 0x14]
call fcn.10003330
add esp, 4
call fcn.100c41c0
mov edx, dword [edi - 0x794]
mov eax, dword [edx + 0x100]
lea ecx, [edi - 0x794]
call eax
mov edx, dword [edi - 0x794]
mov eax, dword [edx + 0xdc]
push 1
lea ecx, [edi - 0x794]
call eax
mov dword [edi + 0x1a0], 0xfffffffe
jmp 0x1000d078
cmp esi, 1
jne 0x1000cf90
push str.ChooseImg_4
jmp 0x1000cf9a
cmp esi, 6
jne 0x1000d00e
push str.ChooseImg_66
call dword [sym.imp.DuiLib_u.dll_public:_static_wchar_t_const____cdecl_DuiLib::CPaintManagerUI::GetStringById_wchar_t_const__]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call dword [0x100ec95c]
lea esi, [edi - 0x794]
call fcn.1000d7a0
mov edx, dword [esi]
movzx ebx, al
mov eax, dword [edx + 0x100]
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [edx + 0xdc]
push 1
mov ecx, esi
call eax
test ebx, ebx
je 0x1000d04e
mov eax, dword [edi + 0x1a0]
cmp eax, 0xfffffffe
je 0x1000d04e
mov ecx, dword [edi + 0x1a4]
push ecx
push eax
call dword [sym.imp.RJCTeacher.dll_int___cdecl_RJCTLIB::cm_on_select_tmpl_click_unsigned_int__unsigned_int_]
add esp, 8
test eax, eax
jne 0x1000d030
mov edx, dword [edi + 0x1a4]
mov eax, dword [edi + 0x1a0]
push edx
push eax
push str.select_tmpl__d____model__d__succ
jmp 0x1000d043
mov edx, dword [edi - 0x794]
mov eax, dword [edx + 0xdc]
lea ecx, [edi - 0x794]
push 0
call eax
mov dword [edi + 0x1a0], 0xfffffffe
jmp 0x1000d078
mov ecx, dword [edi + 0x1a4]
mov edx, dword [edi + 0x1a0]
push ecx
push edx
push str.select_tmpl__d____model__d__error
push 1
call dword [sym.imp.Common.dll_int___cdecl_COMMON::WriteLog_int__wchar_t_const__]
add esp, 0x10
mov dword [edi + 0x1a0], 0xfffffffe
jmp 0x1000d078
cmp eax, 0x17c3
jne 0x1000d07f
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [edi - 0x794]
push ecx
mov byte [edi + 0x194], 1
call fcn.1000e9d0
mov byte [edi + 0x194], 0
xor eax, eax
mov ecx, dword [esp + 0xc8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xb0]
xor ecx, esp
call fcn.100d0962
mov esp, ebp
pop ebp
ret 0x10