Function at 0x4b877f
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
cmp dword [ebp + 0x10], 0
jne 0x4b87ca
mov dword [ebp + 0xc], 1
cmp dword [ebp + 0x18], 0
jne 0x4b87db
mov dword [ebp + 0x14], 1
cmp dword [ebp + 0x24], 0
jl 0x4b87f3
cmp dword [ebp + 0x24], 2
jg 0x4b87f3
xor eax, eax
jmp 0x4b87f8
mov eax, 1
test eax, eax
je 0x4b8807
mov dword [ebp + 0x24], 0
cmp dword [ebp + 0x14], 0
je 0x4b885e
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
mov dword [ebp - 0x24], 0
push 0
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
push dword [ebp + 8]
call fcn.0042299f
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4b8855
push ebx
call fcn.0054e7f0
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x4b88a1
push 0x80000004
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x4b8873
mov eax, 0x60b94c
push eax
push 1
mov ebx, 0x5504d0
call fcn.0054e808
add esp, 0x10
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4b889d
push ebx
call fcn.0054e7f0
add esp, 4
pop eax
mov dword [ebp - 4], eax
push 0x80000005
push 0
mov eax, dword [ebp - 4]
test eax, eax
jne 0x4b88b4
mov eax, 0x708555
push eax
push 1
mov ebx, 0x54eeb0
call fcn.0054e808
add esp, 0x10
mov dword [ebp - 8], eax
fild dword [ebp - 8]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fmul qword [0x71a717]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
call fcn.004055f7
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x550c60
call fcn.0054e808
add esp, 0x10
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4b8915
push ebx
call fcn.0054e7f0
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], 0
push 0x80000004
push 0
push 0xda6ef4
push 1
mov ebx, 0x5504d0
call fcn.0054e808
add esp, 0x10
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4b8955
push ebx
call fcn.0054e7f0
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 8]
xor ecx, ecx
push eax
lea eax, [ebp - 0x18]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x4b9901
cmp dword [ebp + 0xc], 0
je 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b89a4
push 0x530
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b89c1
push 0x530
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x30
jb 0x4b8a2e
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b89f9
push 0x55a
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8a16
push 0x55a
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp byte [ebx], 0x39
ja 0x4b8a2e
mov eax, 1
jmp 0x4b8a33
mov eax, 0
test eax, eax
je 0x4b8a47
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8a6e
push 0x5cc
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8a8b
push 0x5cc
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x41
jb 0x4b8af8
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8ac3
push 0x5f6
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8ae0
push 0x5f6
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp byte [ebx], 0x5a
ja 0x4b8af8
mov eax, 1
jmp 0x4b8afd
mov eax, 0
test eax, eax
je 0x4b8b11
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8b38
push 0x668
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8b55
push 0x668
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x61
jb 0x4b8bc2
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8b8d
push 0x692
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8baa
push 0x692
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp byte [ebx], 0x7a
ja 0x4b8bc2
mov eax, 1
jmp 0x4b8bc7
mov eax, 0
test eax, eax
je 0x4b8bdb
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x1c], 0
je 0x4b8bf1
mov dword [ebp - 0x1c], 0
jmp 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8c18
push 0x728
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8c35
push 0x728
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x2a
jne 0x4b8c52
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8c79
push 0x785
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8c96
push 0x785
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x2d
jne 0x4b8cb3
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8cda
push 0x7e2
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8cf7
push 0x7e2
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x2e
jne 0x4b8d14
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8d3b
push 0x83f
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8d58
push 0x83f
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp byte [ebx], 0x5f
jne 0x4b8d75
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 2
jge 0x4b8ddb
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8da6
push 0x8d1
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8dc3
push 0x8d1
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x21
jne 0x4b8ddb
mov eax, 1
jmp 0x4b8de0
mov eax, 0
test eax, eax
je 0x4b8df4
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 2
jge 0x4b8e5a
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8e25
push 0x964
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8e42
push 0x964
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x27
jne 0x4b8e5a
mov eax, 1
jmp 0x4b8e5f
mov eax, 0
test eax, eax
je 0x4b8e73
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 2
jge 0x4b8ed9
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8ea4
push 0x9f7
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8ec1
push 0x9f7
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x28
jne 0x4b8ed9
mov eax, 1
jmp 0x4b8ede
mov eax, 0
test eax, eax
je 0x4b8ef2
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 2
jge 0x4b8f58
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8f23
push 0xa8a
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8f40
push 0xa8a
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x29
jne 0x4b8f58
mov eax, 1
jmp 0x4b8f5d
mov eax, 0
test eax, eax
je 0x4b8f71
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 2
jge 0x4b8fd7
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b8fa2
push 0xb1d
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b8fbf
push 0xb1d
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x7e
jne 0x4b8fd7
mov eax, 1
jmp 0x4b8fdc
mov eax, 0
test eax, eax
je 0x4b8ff0
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 0
jle 0x4b9056
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b9021
push 0xbb0
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b903e
push 0xbb0
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x2b
jne 0x4b9056
mov eax, 1
jmp 0x4b905b
mov eax, 0
test eax, eax
je 0x4b906f
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 0
jle 0x4b90d5
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b90a0
push 0xc43
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b90bd
push 0xc43
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x2f
jne 0x4b90d5
mov eax, 1
jmp 0x4b90da
mov eax, 0
test eax, eax
je 0x4b90ee
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 0
jle 0x4b9154
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b911f
push 0xcd6
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b913c
push 0xcd6
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x40
jne 0x4b9154
mov eax, 1
jmp 0x4b9159
mov eax, 0
test eax, eax
je 0x4b916d
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b91d3
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b919e
push 0xd69
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b91bb
push 0xd69
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x23
jne 0x4b91d3
mov eax, 1
jmp 0x4b91d8
mov eax, 0
test eax, eax
je 0x4b91ec
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b9252
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b921d
push 0xdfc
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b923a
push 0xdfc
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x24
jne 0x4b9252
mov eax, 1
jmp 0x4b9257
mov eax, 0
test eax, eax
je 0x4b926b
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b92d1
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b929c
push 0xe8f
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b92b9
push 0xe8f
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x26
jne 0x4b92d1
mov eax, 1
jmp 0x4b92d6
mov eax, 0
test eax, eax
je 0x4b92ea
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b9350
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b931b
push 0xf22
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9338
push 0xf22
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x2c
jne 0x4b9350
mov eax, 1
jmp 0x4b9355
mov eax, 0
test eax, eax
je 0x4b9369
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b93cf
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b939a
push 0xfb5
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b93b7
push 0xfb5
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x3a
jne 0x4b93cf
mov eax, 1
jmp 0x4b93d4
mov eax, 0
test eax, eax
je 0x4b93e8
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b944e
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b9419
push 0x1048
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9436
push 0x1048
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x3b
jne 0x4b944e
mov eax, 1
jmp 0x4b9453
mov eax, 0
test eax, eax
je 0x4b9467
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b94cd
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b9498
push 0x10db
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b94b5
push 0x10db
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x3d
jne 0x4b94cd
mov eax, 1
jmp 0x4b94d2
mov eax, 0
test eax, eax
je 0x4b94e6
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
cmp dword [ebp + 0x24], 1
jne 0x4b954c
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b9517
push 0x116e
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9534
push 0x116e
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp byte [ebx], 0x3f
jne 0x4b954c
mov eax, 1
jmp 0x4b9551
mov eax, 0
test eax, eax
je 0x4b9565
mov dword [ebp - 0x1c], 1
jmp 0x4b956c
mov dword [ebp - 0x1c], 0
cmp dword [ebp - 0x1c], 0
je 0x4b961a
inc dword [ebp - 0x10]
mov ebx, dword [ebp - 0xc]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4b95a0
push 0x126a
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b95bd
push 0x126a
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b95e9
push 0x126a
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9606
push 0x126a
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
mov al, byte [ebx]
mov ebx, dword [ebp - 0x20]
mov byte [ebx], al
jmp 0x4b98f9
add dword [ebp - 0x10], 3
mov ebx, dword [ebp - 0xc]
call fcn.0040298d
push ebx
push ecx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x7198b6]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
call fcn.004055f7
dec eax
jns 0x4b965c
push 0x12f2
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9679
push 0x12f2
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov byte [ebx], 0x25
mov ebx, dword [ebp - 0xc]
call fcn.0040298d
push ebx
push ecx
fild dword [ebp - 0x10]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x7198c8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
call fcn.004055f7
dec eax
jns 0x4b96c2
push 0x1339
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b96df
push 0x1339
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x14]
call fcn.0040298d
push ebx
push ecx
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b9715
push 0x1376
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9732
push 0x1376
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x34], ebx
push 0x80000301
push 0
push 4
mov ebx, dword [ebp - 0x34]
mov al, byte [ebx]
and eax, 0xff
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x554290
call fcn.0054e808
add esp, 0x1c
mov dword [ebp - 0x40], eax
fild dword [ebp - 0x40]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fadd qword [0x7198c8]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
call fcn.004055f7
dec eax
jns 0x4b979e
push 0x1376
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b97bb
push 0x1376
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov al, byte [ebx]
mov ebx, dword [ebp - 0x30]
mov byte [ebx], al
mov ebx, dword [ebp - 0xc]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4b97f1
push 0x13ac
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b980e
push 0x13ac
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x14]
call fcn.0040298d
push ebx
push ecx
mov ebx, dword [ebp - 4]
call fcn.0040298d
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x4b9844
push 0x13e5
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b9861
push 0x13e5
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x24], ebx
push 0x80000301
push 0
push 0xf
mov ebx, dword [ebp - 0x24]
mov al, byte [ebx]
and eax, 0xff
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x54ecc0
call fcn.0054e808
add esp, 0x1c
mov dword [ebp - 0x30], eax
fild dword [ebp - 0x30]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fadd qword [0x7198c8]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
call fcn.004055f7
dec eax
jns 0x4b98cd
push 0x13e5
push 0x402645c
push 4
call fcn.0054e7fc
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4b98ea
push 0x13e5
push 0x402645c
push 1
call fcn.0054e7fc
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov al, byte [ebx]
mov ebx, dword [ebp - 0x20]
mov byte [ebx], al
pop eax
pop ebx
pop ecx
jmp 0x4b8965
add esp, 0xc
push 0x80000005
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4b9917
mov eax, 0x708555
push eax
push 1
mov ebx, 0x551160
call fcn.0054e808
add esp, 0x10
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
jmp 0x4b9935
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4b9946
push ebx
call fcn.0054e7f0
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4b9956
push ebx
call fcn.0054e7f0
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4b9966
push ebx
call fcn.0054e7f0
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x24