Function at 0x5251d0
Capabilities:
Parse credit card information

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x6c684e
push eax
mov dword fs:[0], esp
sub esp, 0x230
push ebx
push ebp
push esi
push edi
push str.OnUseItemEvent
mov edi, ecx
call fcn.0040f210
mov ecx, dword [edi + 0x4c]
mov eax, dword [esp + 0x254]
mov edx, dword [edi + 0x50]
sub eax, ecx
mov ecx, dword [esp + 0x258]
add esp, 4
sub ecx, edx
push ecx
push eax
lea eax, [esp + 0x40]
push eax
mov ecx, edi
call fcn.00610f10
mov esi, dword [eax]
mov ebp, dword [eax + 4]
call fcn.005ffb10
mov ecx, eax
call fcn.005fe590
test eax, eax
jne 0x52593b
cmp dword [edi + 0x17c], 7
je 0x52593b
push ebp
push esi
mov ecx, edi
call fcn.00610e10
test al, al
je 0x52593b
push ebp
push esi
mov ecx, edi
call fcn.006113b0
mov esi, eax
test esi, esi
je 0x52593b
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x50]
test al, al
je 0x52593b
mov esi, dword [esi + 0x11c]
mov eax, dword [esi + 0x2cc]
cmp dword [eax + 0x24], 0x17
jne 0x5252d3
cmp dword [edi + 0x17c], 2
jne 0x5252d3
cmp dword [edi + 0x18c], 0xb
jne 0x5252cc
mov edi, dword [edi + 0x188]
sub edi, 0
je 0x5252c1
dec edi
jne 0x5252cc
push esi
mov ecx, 0x74cdb0
call fcn.00462460
mov al, 1
jmp 0x52593d
push esi
mov ecx, 0x74cdb0
call fcn.00462380
mov al, 1
jmp 0x52593d
cmp dword [eax], 0x2b1
jne 0x52531f
cmp dword [edi + 0x17c], 2
jne 0x52531f
cmp dword [edi + 0x18c], 0xc
jne 0x525318
mov edi, dword [edi + 0x188]
sub edi, 0
je 0x52530d
dec edi
jne 0x525318
push esi
mov ecx, 0x74cdb0
call fcn.00462290
mov al, 1
jmp 0x52593d
push esi
mov ecx, 0x74cdb0
call fcn.004621a0
mov al, 1
jmp 0x52593d
push esi
call fcn.00479830
add esp, 4
test al, al
jne 0x525a8a
mov ecx, dword [esi + 0x54]
mov ebx, 1
cmp ecx, ebx
jne 0x52558f
mov eax, dword [esi + 0x2cc]
mov eax, dword [eax + 0x24]
cmp eax, 0x42
je 0x525358
cmp eax, 0x43
je 0x525358
cmp eax, 0x44
jne 0x5253b4
mov eax, dword [esi + 0x2cc]
mov edx, dword [eax]
lea ecx, [eax + 4]
push ecx
push edx
push 0x6e5554
call fcn.0040f210
mov eax, dword [esi + 0x2c]
mov edx, dword [0x739498]
add esp, 0xc
mov ecx, 0x739498
mov byte [esp + 0x14], 4
mov byte [esp + 0x15], 7
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ebx
call dword [edx + 8]
mov ecx, dword [0x74c754]
push 0
push 0x18
lea edx, [esp + 0x1c]
mov dword [esp + 0x1e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov al, 1
jmp 0x52593d
cmp ecx, ebx
jne 0x52558f
mov eax, dword [esi + 0x2cc]
mov eax, dword [eax + 0x24]
cmp eax, 0x49
je 0x5253d1
cmp eax, 0x80
jne 0x52542d
mov eax, dword [esi + 0x2cc]
mov edx, dword [eax]
lea ecx, [eax + 4]
push ecx
push edx
push 0x6e5528
call fcn.0040f210
mov eax, dword [esi + 0x2c]
mov edx, dword [0x739498]
add esp, 0xc
mov ecx, 0x739498
mov byte [esp + 0x14], 4
mov byte [esp + 0x15], 7
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ebx
call dword [edx + 8]
mov ecx, dword [0x74c754]
push 0
push 0x18
lea edx, [esp + 0x1c]
mov dword [esp + 0x1e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov al, 1
jmp 0x52593d
cmp ecx, ebx
jne 0x52558f
mov eax, dword [esi + 0x2cc]
cmp dword [eax + 0x24], 0x4a
jne 0x525497
mov edx, dword [eax]
lea ecx, [eax + 4]
push ecx
push edx
push 0x6e54f4
call fcn.0040f210
mov eax, dword [esi + 0x2c]
mov edx, dword [0x739498]
add esp, 0xc
mov ecx, 0x739498
mov byte [esp + 0x14], 4
mov byte [esp + 0x15], 7
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ebx
call dword [edx + 8]
mov ecx, dword [0x74c754]
push 0
push 0x18
lea edx, [esp + 0x1c]
mov dword [esp + 0x1e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov al, 1
jmp 0x52593d
cmp ecx, ebx
jne 0x52558f
mov eax, dword [esi + 0x2cc]
cmp dword [eax + 0x24], 0x4e
jne 0x525501
mov edx, dword [eax]
lea ecx, [eax + 4]
push ecx
push edx
push 0x6e54c8
call fcn.0040f210
mov eax, dword [esi + 0x2c]
mov edx, dword [0x739498]
add esp, 0xc
mov ecx, 0x739498
mov byte [esp + 0x14], 4
mov byte [esp + 0x15], 7
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ebx
call dword [edx + 8]
mov ecx, dword [0x74c754]
push 0
push 0x18
lea edx, [esp + 0x1c]
mov dword [esp + 0x1e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov al, 1
jmp 0x52593d
cmp ecx, ebx
jne 0x52558f
mov eax, dword [esi + 0x2cc]
mov edx, dword [eax]
cmp edx, 0x3c3
je 0x525521
cmp edx, 0x3c4
jne 0x52558f
mov ecx, dword [0x74cf80]
test ecx, ecx
jne 0x525574
mov ecx, dword [esi + 0x2c]
mov edx, dword [0x739498]
mov byte [esp + 0x14], 0x33
mov byte [esp + 0x15], 1
mov eax, dword [eax]
mov dword [esp + 0x1e], ecx
mov ecx, 0x739498
mov dword [esp + 0x1a], eax
mov byte [esp + 0x22], 0
call dword [edx + 8]
mov ecx, dword [0x74c754]
push 0
push 0xf
lea edx, [esp + 0x1c]
mov dword [esp + 0x1e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov al, 1
jmp 0x52593d
push 0xffff0000
push 0x6e54b0
mov ecx, 0x74cdb0
call fcn.00463940
mov al, 1
jmp 0x52593d
mov eax, dword [esi + 0x2cc]
mov ebp, dword [eax + 0x24]
cmp ebp, 0x3f
jne 0x525790
cmp ecx, ebx
jne 0x525790
mov ecx, dword [esi + 0x30]
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x14], ecx
call fcn.0051fd70
mov edi, eax
add esp, 4
cmp edi, 0xffffffff
je 0x525789
test byte [0x74e5e4], 1
jne 0x5255fc
or dword [0x74e5e4], ebx
xor ebx, ebx
mov dword [esp + 0x248], ebx
call sub.WINMM.dll_timeGetTime
sub eax, 0xea60
mov dword [0x74e5e0], eax
mov dword [esp + 0x248], 0xffffffff
jmp 0x5255fe
xor ebx, ebx
call sub.WINMM.dll_timeGetTime
sub eax, dword [0x74e5e0]
cmp eax, 0x1388
jb 0x525a8a
cmp edi, ebx
jne 0x525716
call fcn.0053a980
test eax, eax
je 0x525716
mov ecx, dword [0x74e914]
mov eax, dword [ecx + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, 0x55555556
fstp dword [esp + 0x14]
mov ecx, dword [ecx + 0x18]
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x14]
fild dword [esp + 0x10]
push ecx
push str.SpringSpringFireWork0
mov dword [esp + 0x24], 0
fstp dword [esp + 0x20]
mov dword [esp + 0x18], 0
call fcn.0053a980
mov ecx, eax
call fcn.0053b020
call fcn.0053a980
mov edi, dword [eax + 0x1c]
cmp edi, ebx
je 0x5256bd
mov edx, dword [edi + 0x258]
lea eax, [esp + 0x38]
push eax
mov ecx, edi
mov byte [edi + 0x284], 0
mov dword [esp + 0x3c], edx
call fcn.0053c580
mov ecx, dword [edi + 0xf8]
mov byte [edi + 0x19], 0
mov dword [esp + 0x10], ecx
lea edx, [esp + 0x14]
push edx
push str.SpringRoseRoseIOU
mov dword [esp + 0x20], 0
call fcn.0053a980
mov ecx, eax
call fcn.0053b020
call fcn.0053a980
mov edi, dword [eax + 0x1c]
cmp edi, ebx
je 0x525716
lea eax, [esp + 0x38]
push eax
mov ecx, edi
mov byte [edi + 0x284], 0
mov dword [esp + 0x3c], 0x41a00000
call fcn.0053c580
mov ecx, dword [esp + 0x10]
mov byte [edi + 0x19], 0
mov dword [edi + 0xf4], ebx
mov dword [edi + 0xf8], ecx
mov edx, dword [esi + 0x2c]
mov eax, dword [0x74c650]
mov dword [esp + 0x24], edx
mov byte [esp + 0x14], 0x12
mov byte [esp + 0x15], 0x18
mov dword [esp + 0x28], ebx
mov ecx, dword [eax + 0x458]
mov edx, dword [ecx + 0x28]
mov eax, dword [esi + 0x30]
lea ecx, [esp + 0x38]
push ecx
mov dword [esp + 0x31], edx
mov byte [esp + 0x30], 1
mov dword [esp + 0x3c], eax
call fcn.0051fd70
mov edx, dword [0x739498]
add esp, 4
mov ecx, 0x739498
mov dword [esp + 0x31], eax
call dword [edx + 8]
mov ecx, dword [0x74c754]
push ebx
push 0x21
lea edx, [esp + 0x1c]
mov dword [esp + 0x1e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
call sub.WINMM.dll_timeGetTime
mov dword [0x74e5e0], eax
mov al, 1
jmp 0x52593d
mov ecx, esi
call fcn.005203c0
test al, al
jne 0x525a91
cmp ebp, 0x79
je 0x525a91
cmp ebp, 0x2c
je 0x5257b6
cmp ebp, 0x39
jne 0x52593b
cmp dword [edi + 0x17c], ebx
jne 0x52593b
mov eax, dword [esi + 0x30]
push eax
call fcn.005237e0
mov edi, eax
add esp, 4
cmp edi, 0xffffffff
je 0x52593b
push edi
call fcn.00437d80
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x52593b
cmp dword [ebx + 0x28], 9
push edi
je 0x525989
mov ecx, dword [0x74c650]
mov ecx, dword [ecx + 0x458]
call fcn.00435e40
test eax, eax
je 0x525841
mov ecx, eax
call fcn.00537270
push eax
lea edx, [esp + 0x44]
push 0x6e54a0
push edx
call fcn.0062f64e
add esp, 0xc
push 0xffff0000
lea eax, [esp + 0x44]
push eax
mov ecx, 0x74cdb0
call fcn.00463940
mov al, 1
jmp 0x52593d
mov ecx, dword [0x74c650]
push 1
lea edx, [esp + 0x3c]
push edx
mov dword [esp + 0x40], 1
mov ecx, dword [ecx + 0x458]
push ebx
call fcn.004387b0
test al, al
je 0x525a76
mov eax, dword [0x74c650]
mov ecx, dword [eax + 0x458]
mov eax, dword [ecx + 0xa5a]
mov ecx, dword [ebx + 0x28]
cmp eax, ecx
je 0x525956
cmp eax, 9
je 0x525956
cmp ecx, 9
je 0x525956
test eax, eax
jne 0x5258ab
push 0xffff0000
push 0x6e547c
jmp 0x525931
cmp eax, 1
jne 0x5258bc
push 0xffff0000
push 0x6e544c
jmp 0x525931
cmp eax, 2
jne 0x5258cd
push 0xffff0000
push 0x6e541c
jmp 0x525931
cmp eax, 3
jne 0x5258de
push 0xffff0000
push 0x6e53ec
jmp 0x525931
cmp eax, 4
jne 0x5258ef
push 0xffff0000
push 0x6e53bc
jmp 0x525931
cmp eax, 5
jne 0x525900
push 0xffff0000
push 0x6e538c
jmp 0x525931
cmp eax, 6
jne 0x525911
push 0xffff0000
push 0x6e535c
jmp 0x525931
cmp eax, 7
jne 0x525922
push 0xffff0000
push 0x6e532c
jmp 0x525931
cmp eax, 8
jne 0x52593b
push 0xffff0000
push 0x6e52fc
mov ecx, 0x74cdb0
call fcn.00463940
xor al, al
mov ecx, dword [esp + 0x240]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x23c
ret
lea edx, [ebx + 4]
push edx
lea eax, [esp + 0x44]
push 0x6e03bc
push eax
call fcn.0062f64e
add esp, 0xc
push 1
push 0x6d2224
push ebx
push 0x38
lea ecx, [esp + 0x50]
push ecx
mov ecx, 0x74cdb0
call fcn.0046a500
mov al, 1
jmp 0x52593d
mov edx, dword [0x74c650]
mov ecx, dword [edx + 0x458]
call fcn.00435e40
mov ebp, eax
mov eax, dword [esi + 0x30]
push eax
call fcn.00523810
add esp, 4
cmp eax, 0xffffffff
je 0x52593b
test ebp, ebp
je 0x5259eb
cmp dword [ebp + 0x30], eax
jne 0x5259eb
mov ecx, ebp
call fcn.00537270
push eax
lea ecx, [esp + 0x44]
push 0x6e54a0
push ecx
call fcn.0062f64e
add esp, 0xc
push 0xffff0000
lea edx, [esp + 0x44]
push edx
mov ecx, 0x74cdb0
call fcn.00463940
mov al, 1
jmp 0x52593d
push eax
push edi
call fcn.00435d40
mov esi, eax
add esp, 8
test esi, esi
je 0x525a8a
mov eax, dword [esi + 0x2c]
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [0x74ce0c]
mov dword [esp + 0x3c], eax
call fcn.004dd910
test al, al
je 0x525a8a
mov edx, dword [0x74c650]
mov ecx, dword [edx + 0x458]
mov eax, dword [ecx]
mov edi, dword [esi + 0x48]
call dword [eax + 0x58]
cmp edi, eax
ja 0x525a76
cmp edi, 0xc8
jae 0x525a76
add esi, 4
push esi
lea ecx, [esp + 0x144]
push 0x6e03bc
push ecx
call fcn.0062f64e
add esp, 0xc
push 1
push 0x6d2224
push ebx
push 0x38
lea edx, [esp + 0x150]
push edx
mov ecx, 0x74cdb0
call fcn.0046a500
mov al, 1
jmp 0x52593d
push 0xffff0000
push 0x6e52e8
mov ecx, 0x74cdb0
call fcn.00463940
mov al, 1
jmp 0x52593d
mov eax, dword [0x74c650]
mov ecx, dword [eax + 0x458]
mov eax, dword [0x74df40]
movzx edi, byte [0x74df42]
movzx edx, ah
and edx, edi
movzx edi, byte [0x74df43]
movzx eax, al
and edi, eax
or edx, edi
and edx, reloc.WS2_32.dll_getsockopt
jns 0x525ac8
dec edx
or edx, 0xfffffff8
inc edx
mov eax, dword [esi + 0x2c]
push eax
call dword [ecx + edx*4 + 0xcbc]
mov al, 1
jmp 0x52593d