joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4592f0
Capabilities:
Parse credit card information

Disassembly:
test ebx, ebx
jne 0x4592f8
or eax, 0xffffffff
ret
push esi
mov esi, dword [ebx]
mov edx, 1
mov al, byte [esi]
cmp al, 0x61
jl 0x45930e
cmp al, 0x7a
jle 0x4593ed
cmp al, 0x41
jl 0x45931a
cmp al, 0x5a
jle 0x4593ed
cmp al, 0x30
jl 0x459326
cmp al, 0x39
jle 0x4593ed
cmp al, 0x2d
je 0x4593ed
cmp al, 0x2e
je 0x4593ed
cmp al, 0x5f
je 0x4593ed
cmp al, 0x7e
je 0x4593ed
cmp al, 0x25
jne 0x45938c
mov cl, byte [esi + 1]
cmp cl, 0x30
jl 0x459357
cmp cl, 0x39
jle 0x45936b
cmp cl, 0x61
jl 0x459361
cmp cl, 0x66
jle 0x45936b
cmp cl, 0x41
jl 0x45938c
cmp cl, 0x46
jg 0x45938c
mov cl, byte [esi + 2]
cmp cl, 0x30
jl 0x459378
cmp cl, 0x39
jle 0x4593ed
cmp cl, 0x61
jl 0x459382
cmp cl, 0x66
jle 0x4593ed
cmp cl, 0x41
jl 0x45938c
cmp cl, 0x46
jle 0x4593ed
cmp al, 0x21
je 0x4593ed
cmp al, 0x24
je 0x4593ed
cmp al, 0x26
je 0x4593ed
cmp al, 0x28
je 0x4593ed
cmp al, 0x29
je 0x4593ed
cmp al, 0x2a
je 0x4593ed
cmp al, 0x2b
je 0x4593ed
cmp al, 0x2c
je 0x4593ed
cmp al, 0x3b
je 0x4593ed
cmp al, 0x3d
je 0x4593ed
cmp al, 0x3a
je 0x4593ed
cmp al, 0x40
je 0x4593ed
cmp al, 0x2f
je 0x4593ed
cmp al, 0x3f
je 0x4593ed
cmp al, 0x5b
je 0x4593ed
cmp al, 0x5d
je 0x4593ed
test edi, edi
je 0x45943e
test byte [edi + 0x24], dl
je 0x459400
cmp al, 0x7b
je 0x4593ed
cmp al, 0x7d
je 0x4593ed
cmp al, 0x7c
je 0x4593ed
cmp al, 0x5c
je 0x4593ed
cmp al, 0x5e
je 0x4593ed
cmp al, 0x60
jne 0x459400
cmp al, 0x25
jne 0x4593f9
add esi, 3
jmp 0x459300
add esi, edx
jmp 0x459300
mov eax, dword [edi + 0x20]
test eax, eax
je 0x459411
push eax
call dword [0x54ee6c]
add esp, 4
test byte [edi + 0x24], 2
je 0x459430
mov eax, dword [ebx]
mov ecx, esi
sub ecx, eax
push ecx
push eax
call fcn.00452710
add esp, 8
mov dword [edi + 0x20], eax
mov dword [ebx], esi
xor eax, eax
pop esi
ret
mov ecx, dword [ebx]
mov eax, esi
sub eax, ecx
call fcn.0045b330
mov dword [edi + 0x20], eax
mov dword [ebx], esi
xor eax, eax
pop esi
ret
Function at 0x459450
Capabilities:
Parse credit card information

Disassembly:
test ebx, ebx
jne 0x459458
or eax, 0xffffffff
ret
push esi
mov esi, dword [ebx]
mov edx, 1
mov al, byte [esi]
cmp al, 0x61
jl 0x45946e
cmp al, 0x7a
jle 0x459551
cmp al, 0x41
jl 0x45947a
cmp al, 0x5a
jle 0x459551
cmp al, 0x30
jl 0x459486
cmp al, 0x39
jle 0x459551
cmp al, 0x2d
je 0x459551
cmp al, 0x2e
je 0x459551
cmp al, 0x5f
je 0x459551
cmp al, 0x7e
je 0x459551
cmp al, 0x25
jne 0x4594ec
mov cl, byte [esi + 1]
cmp cl, 0x30
jl 0x4594b7
cmp cl, 0x39
jle 0x4594cb
cmp cl, 0x61
jl 0x4594c1
cmp cl, 0x66
jle 0x4594cb
cmp cl, 0x41
jl 0x4594ec
cmp cl, 0x46
jg 0x4594ec
mov cl, byte [esi + 2]
cmp cl, 0x30
jl 0x4594d8
cmp cl, 0x39
jle 0x459551
cmp cl, 0x61
jl 0x4594e2
cmp cl, 0x66
jle 0x459551
cmp cl, 0x41
jl 0x4594ec
cmp cl, 0x46
jle 0x459551
cmp al, 0x21
je 0x459551
cmp al, 0x24
je 0x459551
cmp al, 0x26
je 0x459551
cmp al, 0x28
je 0x459551
cmp al, 0x29
je 0x459551
cmp al, 0x2a
je 0x459551
cmp al, 0x2b
je 0x459551
cmp al, 0x2c
je 0x459551
cmp al, 0x3b
je 0x459551
cmp al, 0x3d
je 0x459551
cmp al, 0x3a
je 0x459551
cmp al, 0x40
je 0x459551
cmp al, 0x2f
je 0x459551
cmp al, 0x3f
je 0x459551
test edi, edi
je 0x4595bf
test byte [edi + 0x24], dl
je 0x459564
cmp al, 0x7b
je 0x459551
cmp al, 0x7d
je 0x459551
cmp al, 0x7c
je 0x459551
cmp al, 0x5c
je 0x459551
cmp al, 0x5e
je 0x459551
cmp al, 0x5b
je 0x459551
cmp al, 0x5d
je 0x459551
cmp al, 0x60
jne 0x459564
cmp al, 0x25
jne 0x45955d
add esi, 3
jmp 0x459460
add esi, edx
jmp 0x459460
mov eax, dword [edi + 0x1c]
test eax, eax
je 0x459575
push eax
call dword [0x54ee6c]
add esp, 4
test byte [edi + 0x24], 2
je 0x45958d
mov eax, dword [ebx]
mov ecx, esi
sub ecx, eax
push ecx
push eax
call fcn.00452710
add esp, 8
jmp 0x459598
mov ecx, dword [ebx]
mov eax, esi
sub eax, ecx
call fcn.0045b330
mov dword [edi + 0x1c], eax
mov eax, dword [edi + 0x28]
test eax, eax
je 0x4595ac
push eax
call dword [0x54ee6c]
add esp, 4
mov eax, dword [ebx]
mov edx, esi
sub edx, eax
push edx
push eax
call fcn.00452710
add esp, 8
mov dword [edi + 0x28], eax
mov dword [ebx], esi
xor eax, eax
pop esi
ret
Function at 0x459620
Capabilities:
Parse credit card information

Disassembly:
push esi
mov esi, dword [ebx]
mov al, byte [esi]
cmp al, 0x61
jl 0x459631
cmp al, 0x7a
jle 0x4596cb
cmp al, 0x41
jl 0x45963d
cmp al, 0x5a
jle 0x4596cb
cmp al, 0x30
jl 0x459649
cmp al, 0x39
jle 0x4596cb
cmp al, 0x2d
je 0x4596cb
cmp al, 0x2e
je 0x4596cb
cmp al, 0x5f
je 0x4596cb
cmp al, 0x7e
je 0x4596cb
cmp al, 0x25
jne 0x45969f
mov cl, byte [esi + 1]
cmp cl, 0x30
jl 0x45966a
cmp cl, 0x39
jle 0x45967e
cmp cl, 0x61
jl 0x459674
cmp cl, 0x66
jle 0x45967e
cmp cl, 0x41
jl 0x45969f
cmp cl, 0x46
jg 0x45969f
mov cl, byte [esi + 2]
cmp cl, 0x30
jl 0x45968b
cmp cl, 0x39
jle 0x4596cb
cmp cl, 0x61
jl 0x459695
cmp cl, 0x66
jle 0x4596cb
cmp cl, 0x41
jl 0x45969f
cmp cl, 0x46
jle 0x4596cb
cmp al, 0x21
je 0x4596cb
cmp al, 0x24
je 0x4596cb
cmp al, 0x26
je 0x4596cb
cmp al, 0x28
je 0x4596cb
cmp al, 0x29
je 0x4596cb
cmp al, 0x2a
je 0x4596cb
cmp al, 0x2b
je 0x4596cb
cmp al, 0x2c
je 0x4596cb
cmp al, 0x3b
je 0x4596cb
cmp al, 0x3d
je 0x4596cb
cmp al, 0x3a
jne 0x4596df
cmp al, 0x25
jne 0x4596d7
add esi, 3
jmp 0x459623
add esi, 1
jmp 0x459623
cmp byte [esi], 0x40
jne 0x45972c
test edi, edi
je 0x459726
mov eax, dword [edi + 0x10]
test eax, eax
je 0x4596f9
push eax
call dword [0x54ee6c]
add esp, 4
test byte [edi + 0x24], 2
je 0x459718
mov eax, dword [ebx]
mov ecx, esi
sub ecx, eax
push ecx
push eax
call fcn.00452710
add esp, 8
mov dword [edi + 0x10], eax
mov dword [ebx], esi
xor eax, eax
pop esi
ret
mov ecx, dword [ebx]
mov eax, esi
sub eax, ecx
call fcn.0045b330
mov dword [edi + 0x10], eax
mov dword [ebx], esi
xor eax, eax
pop esi
ret
mov eax, 1
pop esi
ret
Function at 0x4597d0
Capabilities:
Parse credit card information

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
push ebp
mov ebp, dword [esp + 0x10]
push esi
push edi
mov edi, dword [eax]
mov al, byte [edi]
cmp al, 0x5b
mov dword [esp + 0x10], edi
mov ebx, edi
jne 0x45981b
mov al, byte [edi + 1]
add edi, 1
cmp al, 0x5d
je 0x459803
test al, al
je 0x45980b
mov al, byte [edi + 1]
add edi, 1
cmp al, 0x5d
jne 0x4597f5
add edi, 1
jmp 0x459928
cmp byte [edi], 0x5d
je 0x459803
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
pop ecx
ret
cmp al, 0x30
jl 0x459870
cmp al, 0x39
jg 0x459870
lea esi, [esp + 0x10]
call fcn.00459740
test eax, eax
jne 0x459870
mov ecx, dword [esp + 0x10]
cmp byte [ecx], 0x2e
jne 0x459870
add dword [esp + 0x10], 1
call fcn.00459740
test eax, eax
jne 0x459870
mov edx, dword [esp + 0x10]
cmp byte [edx], 0x2e
jne 0x459870
call fcn.00459740
test eax, eax
jne 0x459870
mov eax, dword [esp + 0x10]
cmp byte [eax], 0x2e
jne 0x459870
call fcn.00459740
test eax, eax
je 0x459924
nop
mov al, byte [edi]
cmp al, 0x61
jl 0x45987e
cmp al, 0x7a
jle 0x459910
cmp al, 0x41
jl 0x45988a
cmp al, 0x5a
jle 0x459910
cmp al, 0x30
jl 0x459892
cmp al, 0x39
jle 0x459910
cmp al, 0x2d
je 0x459910
cmp al, 0x2e
je 0x459910
cmp al, 0x5f
je 0x459910
cmp al, 0x7e
je 0x459910
cmp al, 0x25
jne 0x4598e8
mov cl, byte [edi + 1]
cmp cl, 0x30
jl 0x4598b3
cmp cl, 0x39
jle 0x4598c7
cmp cl, 0x61
jl 0x4598bd
cmp cl, 0x66
jle 0x4598c7
cmp cl, 0x41
jl 0x4598e8
cmp cl, 0x46
jg 0x4598e8
mov cl, byte [edi + 2]
cmp cl, 0x30
jl 0x4598d4
cmp cl, 0x39
jle 0x459910
cmp cl, 0x61
jl 0x4598de
cmp cl, 0x66
jle 0x459910
cmp cl, 0x41
jl 0x4598e8
cmp cl, 0x46
jle 0x459910
cmp al, 0x21
je 0x459910
cmp al, 0x24
je 0x459910
cmp al, 0x26
je 0x459910
cmp al, 0x28
je 0x459910
cmp al, 0x29
je 0x459910
cmp al, 0x2a
je 0x459910
cmp al, 0x2b
je 0x459910
cmp al, 0x2c
je 0x459910
cmp al, 0x3b
je 0x459910
cmp al, 0x3d
jne 0x459928
cmp al, 0x25
jne 0x45991c
add edi, 3
jmp 0x459870
add edi, 1
jmp 0x459870
mov edi, dword [esp + 0x10]
xor esi, esi
cmp ebp, esi
je 0x45999b
mov eax, dword [ebp + 8]
cmp eax, esi
je 0x45993f
push eax
call dword [0x54ee6c]
add esp, 4
mov eax, dword [ebp + 0xc]
cmp eax, esi
mov dword [ebp + 8], esi
je 0x459953
push eax
call dword [0x54ee6c]
add esp, 4
cmp edi, ebx
je 0x459998
test byte [ebp + 0x24], 2
je 0x45997c
mov ecx, edi
sub ecx, ebx
push ecx
push ebx
call fcn.00452710
mov edx, dword [esp + 0x24]
add esp, 8
mov dword [edx], edi
pop edi
pop esi
mov dword [ebp + 0xc], eax
pop ebp
xor eax, eax
pop ebx
pop ecx
ret
mov eax, edi
sub eax, ebx
mov ecx, ebx
call fcn.0045b330
mov edx, dword [esp + 0x1c]
mov dword [edx], edi
pop edi
pop esi
mov dword [ebp + 0xc], eax
pop ebp
xor eax, eax
pop ebx
pop ecx
ret
mov dword [ebp + 0xc], esi
mov edx, dword [esp + 0x1c]
mov dword [edx], edi
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
pop ecx
ret
Function at 0x459a30
Capabilities:
Parse credit card information

Disassembly:
mov edx, dword [esi]
mov al, byte [edx]
cmp al, 0x61
jl 0x459a40
cmp al, 0x7a
jle 0x459af8
cmp al, 0x41
jl 0x459a4c
cmp al, 0x5a
jle 0x459af8
cmp al, 0x30
jl 0x459a58
cmp al, 0x39
jle 0x459af8
cmp al, 0x2d
je 0x459af8
cmp al, 0x2e
je 0x459af8
cmp al, 0x5f
je 0x459af8
cmp al, 0x7e
je 0x459af8
cmp al, 0x25
jne 0x459abe
mov cl, byte [edx + 1]
cmp cl, 0x30
jl 0x459a89
cmp cl, 0x39
jle 0x459a9d
cmp cl, 0x61
jl 0x459a93
cmp cl, 0x66
jle 0x459a9d
cmp cl, 0x41
jl 0x459abe
cmp cl, 0x46
jg 0x459abe
mov cl, byte [edx + 2]
cmp cl, 0x30
jl 0x459aaa
cmp cl, 0x39
jle 0x459af8
cmp cl, 0x61
jl 0x459ab4
cmp cl, 0x66
jle 0x459af8
cmp cl, 0x41
jl 0x459abe
cmp cl, 0x46
jle 0x459af8
cmp al, 0x21
je 0x459af8
cmp al, 0x24
je 0x459af8
cmp al, 0x26
je 0x459af8
cmp al, 0x28
je 0x459af8
cmp al, 0x29
je 0x459af8
cmp al, 0x2a
je 0x459af8
cmp al, 0x2b
je 0x459af8
cmp al, 0x2c
je 0x459af8
cmp al, 0x3b
je 0x459af8
cmp al, 0x3d
je 0x459af8
cmp al, 0x3a
je 0x459af8
cmp al, 0x40
je 0x459af8
xor eax, eax
cmp dword [esp + 4], eax
sete al
ret
mov al, byte [edx]
cmp al, 0x61
jl 0x459b06
cmp al, 0x7a
jle 0x459bac
cmp al, 0x41
jl 0x459b12
cmp al, 0x5a
jle 0x459bac
cmp al, 0x30
jl 0x459b1e
cmp al, 0x39
jle 0x459bac
cmp al, 0x2d
je 0x459bac
cmp al, 0x2e
je 0x459bac
cmp al, 0x5f
je 0x459bac
cmp al, 0x7e
je 0x459bac
cmp al, 0x25
jne 0x459b7c
mov cl, byte [edx + 1]
cmp cl, 0x30
jl 0x459b47
cmp cl, 0x39
jle 0x459b5b
cmp cl, 0x61
jl 0x459b51
cmp cl, 0x66
jle 0x459b5b
cmp cl, 0x41
jl 0x459b7c
cmp cl, 0x46
jg 0x459b7c
mov cl, byte [edx + 2]
cmp cl, 0x30
jl 0x459b68
cmp cl, 0x39
jle 0x459bac
cmp cl, 0x61
jl 0x459b72
cmp cl, 0x66
jle 0x459bac
cmp cl, 0x41
jl 0x459b7c
cmp cl, 0x46
jle 0x459bac
cmp al, 0x21
je 0x459bac
cmp al, 0x24
je 0x459bac
cmp al, 0x26
je 0x459bac
cmp al, 0x28
je 0x459bac
cmp al, 0x29
je 0x459bac
cmp al, 0x2a
je 0x459bac
cmp al, 0x2b
je 0x459bac
cmp al, 0x2c
je 0x459bac
cmp al, 0x3b
je 0x459bac
cmp al, 0x3d
je 0x459bac
cmp al, 0x3a
je 0x459bac
cmp al, 0x40
jne 0x459bc4
cmp al, bl
je 0x459bc4
cmp al, 0x25
jne 0x459bbc
add edx, 3
jmp 0x459af8
add edx, 1
jmp 0x459af8
mov dword [esi], edx
xor eax, eax
ret
Function at 0x459e80
Capabilities:
Parse credit card information

Disassembly:
push ecx
push esi
mov esi, dword [ebx]
push edi
mov edi, eax
mov al, byte [esi]
cmp al, 0x2f
mov dword [esp + 8], esi
jne 0x459ee8
cmp byte [esi + 1], 0x2f
lea eax, [esp + 8]
push eax
jne 0x459ed4
add esi, 2
mov eax, edi
mov dword [esp + 0xc], esi
call fcn.004599b0
add esp, 4
test eax, eax
jne 0x459fdf
lea ecx, [esp + 8]
push ecx
call fcn.00459bd0
add esp, 4
test eax, eax
jne 0x459fdf
mov edx, dword [esp + 8]
pop edi
mov dword [ebx], edx
pop esi
pop ecx
ret
call fcn.00459c60
add esp, 4
test eax, eax
je 0x459fd7
pop edi
pop esi
pop ecx
ret
cmp al, 0x61
jl 0x459ef4
cmp al, 0x7a
jle 0x459fc6
cmp al, 0x41
jl 0x459f00
cmp al, 0x5a
jle 0x459fc6
cmp al, 0x30
jl 0x459f0c
cmp al, 0x39
jle 0x459fc6
cmp al, 0x2d
je 0x459fc6
cmp al, 0x2e
je 0x459fc6
cmp al, 0x5f
je 0x459fc6
cmp al, 0x7e
je 0x459fc6
cmp al, 0x25
jne 0x459f72
mov cl, byte [esi + 1]
cmp cl, 0x30
jl 0x459f3d
cmp cl, 0x39
jle 0x459f51
cmp cl, 0x61
jl 0x459f47
cmp cl, 0x66
jle 0x459f51
cmp cl, 0x41
jl 0x459f72
cmp cl, 0x46
jg 0x459f72
mov cl, byte [esi + 2]
cmp cl, 0x30
jl 0x459f5e
cmp cl, 0x39
jle 0x459fc6
cmp cl, 0x61
jl 0x459f68
cmp cl, 0x66
jle 0x459fc6
cmp cl, 0x41
jl 0x459f72
cmp cl, 0x46
jle 0x459fc6
cmp al, 0x21
je 0x459fc6
cmp al, 0x24
je 0x459fc6
cmp al, 0x26
je 0x459fc6
cmp al, 0x28
je 0x459fc6
cmp al, 0x29
je 0x459fc6
cmp al, 0x2a
je 0x459fc6
cmp al, 0x2b
je 0x459fc6
cmp al, 0x2c
je 0x459fc6
cmp al, 0x3b
je 0x459fc6
cmp al, 0x3d
je 0x459fc6
cmp al, 0x3a
je 0x459fc6
cmp al, 0x40
je 0x459fc6
test edi, edi
je 0x459fdb
mov eax, dword [edi + 0x18]
test eax, eax
je 0x459fb7
push eax
call dword [0x54ee6c]
add esp, 4
mov dword [edi + 0x18], 0
pop edi
mov dword [ebx], esi
xor eax, eax
pop esi
pop ecx
ret
lea ecx, [esp + 8]
push ecx
call fcn.00459d20
add esp, 4
test eax, eax
jne 0x459fdf
mov esi, dword [esp + 8]
mov dword [ebx], esi
xor eax, eax
pop edi
pop esi
pop ecx
ret
Function at 0x459ff0
Capabilities:
Parse credit card information

Disassembly:
push ebx
mov ebx, dword [esp + 8]
push edi
mov edi, eax
mov al, byte [ebx]
cmp al, 0x2f
jne 0x45a051
cmp byte [ebx + 1], al
jne 0x45a039
lea eax, [esp + 0xc]
push eax
add ebx, 2
mov eax, edi
mov dword [esp + 0x10], ebx
call fcn.004599b0
add esp, 4
test eax, eax
jne 0x45a190
lea ecx, [esp + 0xc]
push ecx
call fcn.00459bd0
add esp, 4
test eax, eax
je 0x45a13a
pop edi
pop ebx
ret
lea edx, [esp + 0xc]
push edx
call fcn.00459c60
add esp, 4
test eax, eax
je 0x45a13a
pop edi
pop ebx
ret
cmp al, 0x61
jl 0x45a05d
cmp al, 0x7a
jle 0x45a129
cmp al, 0x41
jl 0x45a069
cmp al, 0x5a
jle 0x45a129
cmp al, 0x30
jl 0x45a075
cmp al, 0x39
jle 0x45a129
cmp al, 0x2d
je 0x45a129
cmp al, 0x2e
je 0x45a129
cmp al, 0x5f
je 0x45a129
cmp al, 0x7e
je 0x45a129
cmp al, 0x25
jne 0x45a0db
mov cl, byte [ebx + 1]
cmp cl, 0x30
jl 0x45a0a6
cmp cl, 0x39
jle 0x45a0ba
cmp cl, 0x61
jl 0x45a0b0
cmp cl, 0x66
jle 0x45a0ba
cmp cl, 0x41
jl 0x45a0db
cmp cl, 0x46
jg 0x45a0db
mov cl, byte [ebx + 2]
cmp cl, 0x30
jl 0x45a0c7
cmp cl, 0x39
jle 0x45a129
cmp cl, 0x61
jl 0x45a0d1
cmp cl, 0x66
jle 0x45a129
cmp cl, 0x41
jl 0x45a0db
cmp cl, 0x46
jle 0x45a129
cmp al, 0x21
je 0x45a129
cmp al, 0x24
je 0x45a129
cmp al, 0x26
je 0x45a129
cmp al, 0x28
je 0x45a129
cmp al, 0x29
je 0x45a129
cmp al, 0x2a
je 0x45a129
cmp al, 0x2b
je 0x45a129
cmp al, 0x2c
je 0x45a129
cmp al, 0x3b
je 0x45a129
cmp al, 0x3d
je 0x45a129
cmp al, 0x3a
je 0x45a129
cmp al, 0x40
je 0x45a129
test edi, edi
je 0x45a13e
mov eax, dword [edi + 0x18]
test eax, eax
je 0x45a120
push eax
call dword [0x54ee6c]
add esp, 4
mov dword [edi + 0x18], 0
jmp 0x45a13e
lea eax, [esp + 0xc]
push eax
call fcn.00459dd0
add esp, 4
test eax, eax
jne 0x45a190
mov ebx, dword [esp + 0xc]
cmp byte [ebx], 0x3f
jne 0x45a15b
add ebx, 1
mov dword [esp + 0xc], ebx
lea ebx, [esp + 0xc]
call fcn.00459450
test eax, eax
jne 0x45a190
mov ebx, dword [esp + 0xc]
cmp byte [ebx], 0x23
jne 0x45a178
add ebx, 1
mov dword [esp + 0xc], ebx
lea ebx, [esp + 0xc]
call fcn.004592f0
test eax, eax
jne 0x45a190
mov ebx, dword [esp + 0xc]
cmp byte [ebx], 0
je 0x45a18e
push esi
mov esi, edi
call fcn.0045b010
pop esi
pop edi
mov eax, 1
pop ebx
ret
xor eax, eax
pop edi
pop ebx
ret
Function at 0x45be10
Capabilities:
Encode data using xor

Disassembly:
test edx, edx
jle 0x45be4d
test esi, esi
je 0x45be4d
xor eax, eax
xor ecx, ecx
test edx, edx
jle 0x45be3c
push edi
movzx edi, byte [ecx + esi]
add edi, eax
imul edi, edi, 0x401
mov eax, edi
shr edi, 6
add ecx, 1
xor eax, edi
cmp ecx, edx
jl 0x45be21
pop edi
lea ecx, [eax + eax*8]
mov eax, ecx
shr eax, 0xb
xor eax, ecx
imul eax, eax, 0x8001
ret
xor eax, eax
ret
Function at 0x461560
Capabilities:
Create thread
Get thread local storage value
Set thread local storage value

Disassembly:
call fcn.00461640
mov eax, dword [0x54ec9c]
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
test eax, eax
jne 0x46163b
push edi
call fcn.00461490
mov edi, eax
test edi, edi
jne 0x461587
pop edi
ret
push esi
push 8
call fcn.004acec0
mov esi, eax
add esp, 4
test esi, esi
jne 0x4615f5
call fcn.00461640
mov edi, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call edi
cmp dword [0x553af4], eax
jne 0x4615b4
mov esi, 0x554748
jmp 0x4615c1
call fcn.00461560
mov esi, eax
add esi, 0x17c
call fcn.00461640
call edi
cmp dword [0x553af4], eax
jne 0x4615d7
mov eax, 0x54f7e0
jmp 0x4615e1
call fcn.00461560
add eax, 0x174
mov ecx, dword [esi]
mov edx, dword [eax]
push str.xmlGetGlobalState:_out_of_memory_n
push ecx
call edx
add esp, 8
pop esi
xor eax, eax
pop edi
ret
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push 2
push 1
push 0
push esi
mov dword [esi + 4], edi
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_DuplicateHandle]
mov eax, dword [0x54ec9c]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
push esi
push 0
push 0x461520
call fcn.004b0382
add esp, 0xc
pop ebx
pop esi
mov eax, edi
pop edi
ret

Function at 0x461640
Capabilities:
Allocate thread local storage

Disassembly:
cmp dword [0x55477c], 0
jne 0x46169e
push 0x554780
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
cmp eax, 1
jne 0x46167a
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x54ec9c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x553af4], eax
mov dword [0x55477c], 1
ret
cmp dword [0x55477c], 0
jne 0x46169e
push esi
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
lea ebx, [ebx]
push 0
call esi
cmp dword [0x55477c], 0
je 0x461690
pop esi
ret
Function at 0x461950
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x7d8
mov eax, dword [0x54d158]
xor eax, esp
mov dword [esp + 0x7d4], eax
push ebx
push ebp
push esi
push edi
mov edi, str.urn:publicid:
xor eax, eax
cmp ecx, edi
mov dword [esp + 0x10], 0xd
mov ebx, ecx
je 0x4619a0
test ecx, ecx
je 0x4619ca
mov dl, byte [edi]
movzx esi, byte [ebx]
movzx ebp, dl
sub esi, ebp
add ebx, 1
test esi, esi
jne 0x4619ca
sub dword [esp + 0x10], 1
je 0x4619a0
add edi, 1
test dl, dl
jne 0x461981
mov dl, byte [ecx + 0xd]
add ecx, 0xd
test dl, dl
je 0x461aeb
mov bl, 0x3a
cmp eax, 0x7cc
ja 0x461aeb
cmp dl, 0x2b
jne 0x4619d1
mov byte [esp + eax + 0x14], 0x20
jmp 0x461adb
xor eax, eax
jmp 0x461b1a
cmp dl, bl
jne 0x4619e7
mov byte [esp + eax + 0x14], 0x2f
add eax, 1
mov byte [esp + eax + 0x14], 0x2f
jmp 0x461adb
cmp dl, 0x3b
jne 0x4619fc
mov byte [esp + eax + 0x14], bl
add eax, 1
mov byte [esp + eax + 0x14], bl
jmp 0x461adb
cmp dl, 0x25
jne 0x461ad7
mov dl, byte [ecx + 1]
cmp dl, 0x32
jne 0x461a23
cmp byte [ecx + 2], 0x42
jne 0x461a23
mov byte [esp + eax + 0x14], 0x2b
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x33
jne 0x461a3d
cmp byte [ecx + 2], 0x41
jne 0x461a3d
mov byte [esp + eax + 0x14], bl
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x32
jne 0x461a58
cmp byte [ecx + 2], 0x46
jne 0x461a58
mov byte [esp + eax + 0x14], 0x2f
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x33
jne 0x461a70
cmp byte [ecx + 2], 0x42
jne 0x461a70
mov byte [esp + eax + 0x14], 0x3b
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x32
jne 0x461a88
cmp byte [ecx + 2], 0x37
jne 0x461a88
mov byte [esp + eax + 0x14], 0x27
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x33
jne 0x461aa0
cmp byte [ecx + 2], 0x46
jne 0x461aa0
mov byte [esp + eax + 0x14], 0x3f
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x32
jne 0x461ad0
cmp byte [ecx + 2], 0x33
jne 0x461ab8
mov byte [esp + eax + 0x14], 0x23
add eax, 1
add ecx, 3
jmp 0x461ae1
cmp dl, 0x32
jne 0x461ad0
cmp byte [ecx + 2], 0x35
jne 0x461ad0
mov byte [esp + eax + 0x14], 0x25
add eax, 1
add ecx, 3
jmp 0x461ae1
mov byte [esp + eax + 0x14], 0x25
jmp 0x461adb
mov byte [esp + eax + 0x14], dl
add eax, 1
add ecx, 1
mov dl, byte [ecx]
test dl, dl
jne 0x4619b0
mov byte [esp + eax + 0x14], 0
cmp byte [esp + 0x14], 0
lea eax, [esp + 0x14]
je 0x461b08
jmp 0x461b00
add eax, 1
cmp byte [eax], 0
jne 0x461b00
lea ecx, [esp + 0x14]
sub eax, ecx
push eax
mov edx, ecx
push edx
call fcn.00452710
add esp, 8
mov ecx, dword [esp + 0x7e4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004ac89d
add esp, 0x7d8
ret
Function at 0x469fd0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4d57e8
mov eax, dword fs:[0]
push eax
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov eax, dword [0x54d158]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov edi, ecx
mov ebp, dword [esp + 0x8c]
mov eax, dword [ebp + 8]
sub eax, dword [ebp + 4]
mov esi, dword [edi + 0x14]
sub eax, 2
cmp esi, eax
mov ebx, 1
ja 0x46a03a
cmp dword [edi + 0x18], eax
je 0x46a03a
push ebx
push eax
call fcn.0040f640
test al, al
je 0x46a03a
cmp dword [edi + 0x18], 0x10
mov dword [edi + 0x14], esi
jb 0x46a033
mov eax, dword [edi + 4]
jmp 0x46a036
lea eax, [edi + 4]
mov byte [eax + esi], 0
mov esi, dword [ebp + 4]
mov ecx, dword [ebp + 8]
sub ecx, ebx
add esi, ebx
cmp esi, ecx
mov dword [esp + 0x18], ecx
je 0x46a20a
jmp 0x46a056
mov ecx, dword [esp + 0x18]
mov al, byte [esi]
add esi, ebx
cmp al, 0x22
mov byte [esp + 0x20], al
je 0x46a20a
cmp al, 0x5c
jne 0x46a156
cmp esi, ecx
je 0x46a171
mov al, byte [esi]
movsx eax, al
add esi, ebx
add eax, 0xffffffde
cmp eax, 0x53
mov dword [esp + 0x8c], esi
ja case.0x46a097.35
movzx eax, byte [eax + 0x46a24c]
jmp dword [eax*4 + 0x46a224]
push 0x22
jmp 0x46a15b
push 0x2f
jmp 0x46a15b
push 0x5c
jmp 0x46a15b
push 8
jmp 0x46a15b
push 0xc
jmp 0x46a15b
push 0xa
jmp 0x46a15b
push 0xd
jmp 0x46a15b
push 9
jmp 0x46a15b
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esp + 0x8c]
push ecx
push ebp
lea ecx, [esp + 0x98]
call fcn.0046a2a0
test al, al
je 0x46a1ad
mov ecx, dword [esp + 0x1c]
lea esi, [esp + 0x40]
call fcn.00468890
push 0
push eax
or eax, 0xffffffff
mov esi, edi
mov dword [esp + 0x88], ebx
call fcn.0040e840
mov dword [esp + 0x80], 0xffffffff
cmp dword [esp + 0x58], 0x10
jb 0x46a138
mov eax, dword [esp + 0x44]
push eax
call fcn.004a08dc
add esp, 4
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x58], 0xf
mov dword [esp + 0x54], 0
mov byte [esp + 0x44], 0
jmp 0x46a162
mov ecx, dword [esp + 0x20]
push ecx
mov eax, ebx
call fcn.0046a780
cmp esi, dword [esp + 0x18]
jne 0x46a052
jmp 0x46a20a
push str.Empty_escape_sequence_in_string
lea ecx, [esp + 0x60]
call fcn.0040fbf0
mov edx, esi
mov esi, dword [esp + 0x88]
push ebp
lea ecx, [esp + 0x60]
mov dword [esp + 0x84], 0
call fcn.0046a560
cmp dword [esp + 0x74], 0x10
mov bl, al
jb 0x46a20a
mov edx, dword [esp + 0x60]
push edx
jmp 0x46a202
xor al, al
jmp 0x46a20c
push 0x1d
push str.Bad_escape_sequence_in_string
lea ecx, [esp + 0x2c]
mov dword [esp + 0x44], 0xf
mov dword [esp + 0x40], 0
mov byte [esp + 0x30], 0
call fcn.0040fc60
mov edx, esi
mov esi, dword [esp + 0x88]
push ebp
lea ecx, [esp + 0x28]
mov dword [esp + 0x84], 2
call fcn.0046a560
cmp dword [esp + 0x3c], 0x10
mov bl, al
jb 0x46a20a
mov eax, dword [esp + 0x28]
push eax
call fcn.004a08dc
add esp, 4
mov al, bl
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret 8
Function at 0x46a560
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4d4ff8
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x54d158]
xor eax, esp
mov dword [esp + 0x2c], eax
push ebx
push edi
mov eax, dword [0x54d158]
xor eax, esp
push eax
lea eax, [esp + 0x3c]
mov dword fs:[0], eax
mov eax, dword [esp + 0x4c]
mov edi, edx
xor edx, edx
mov dword [esp + 0x30], 0xf
mov dword [esp + 0x2c], edx
mov byte [esp + 0x1c], dl
mov dword [esp + 0x44], edx
mov ebx, dword [eax]
push 0xffffffffffffffff
mov dword [esp + 0x10], ebx
mov ebx, dword [eax + 4]
mov eax, dword [eax + 8]
push edx
push ecx
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], eax
call fcn.0040f4d0
mov dword [esp + 0x34], edi
lea eax, [esi + 0x14]
lea edi, [esp + 0xc]
call fcn.0046a730
cmp dword [esp + 0x30], 0x10
jb 0x46a5f1
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.004a08dc
add esp, 4
xor al, al
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004ac89d
add esp, 0x3c
ret 4