Function at 0x6f8d2990
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x8c
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov esi, dword [eax + 4]
mov dword [ebp - 0x68], esi
mov esi, dword [eax]
mov dword [ebp - 0x74], esi
test ebx, ebx
je 0x6f8d29ba
mov esi, dword [ebp + 0xc]
mov dword [esi], 0
mov esi, dword [ebp + 0x10]
mov dword [esi], 0
mov esi, dword [ebp + 0x14]
and esi, 0xf0
mov dword [ebp - 0x50], esi
cmp esi, 0x20
je 0x6f8d29f6
ja 0x6f8d29f0
test byte [ebp + 0x14], 0xe0
je 0x6f8d29f6
mov ebx, 0xfffffff7
add esp, 0x8c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dword [ebp - 0x50], 0x30
jne 0x6f8d29dc
mov edx, dword [eax]
xor ebx, ebx
test edx, edx
je 0x6f8d29e1
mov dword [esp + 8], edx
mov dword [esp + 4], 0
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_memchr]
mov dword [ebp - 0x78], eax
test eax, eax
jne 0x6f8d3ab1
mov esi, dword [ebp - 0x68]
mov dword [ebp - 0x40], esi
movzx eax, byte [esi]
test al, al
je 0x6f8d3848
mov dword [ebp - 0x54], esi
lea esi, [ebp - 0x38]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x7c], 8
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x5c], 0
sub eax, 9
cmp al, 0x17
jbe 0x6f8d2e40
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
movzx eax, byte [eax]
lea edx, [eax - 9]
cmp dl, 0x17
ja 0x6f8d2ac0
mov ecx, 0x800013
bt ecx, edx
jae 0x6f8d2acc
cmp dword [ebp - 0x50], 0x20
je 0x6f8d2a93
test dword [ebp + 0x14], 0x3000
jne 0x6f8d2b10
mov esi, dword [ebp - 0x58]
lea eax, [esi + 1]
mov dword [ebp - 0x40], eax
movzx eax, byte [esi + 1]
test al, al
je 0x6f8d2b10
mov edx, dword [ebp - 0x58]
mov ecx, 0x800013
add edx, 2
nop
sub eax, 9
cmp al, 0x17
jbe 0x6f8d2b00
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x58], eax
movzx eax, byte [eax]
lea edx, [eax - 0x30]
cmp dl, 9
jbe 0x6f8d2be0
mov edx, eax
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
ja 0x6f8d2b10
cmp dword [ebp - 0x50], 0x20
je 0x6f8d2b9c
test al, al
jne 0x6f8d2e70
mov esi, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
dec esi
mov dword [ebp - 0x54], eax
jmp 0x6f8d2dbe
bt ecx, eax
jae 0x6f8d2ab7
mov dword [ebp - 0x40], edx
movzx eax, byte [edx]
inc edx
test al, al
jne 0x6f8d2ab0
mov esi, dword [ebp - 0x5c]
mov ebx, 0xfffffffc
dec esi
test esi, esi
js 0x6f8d2b63
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp + 0x18]
mov ebx, esi
jmp 0x6f8d2b41
mov dword [esp + 4], edi
mov dword [esp], esi
call sym._ber_memfree_x
sub ebx, 1
jb 0x6f8d2b60
mov eax, dword [ebp - 0x4c]
mov esi, dword [eax + ebx*4]
test byte [esi + 0x10], 0x20
je 0x6f8d2b30
mov dword [esp + 4], edi
mov ecx, dword [esi + 0xc]
mov dword [esp], ecx
call sym._ber_memfree_x
jmp 0x6f8d2b30
mov ebx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
lea esi, [ebp - 0x38]
cmp eax, esi
je 0x6f8d2b7c
mov esi, dword [ebp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], esi
call sym._ber_memfree_x
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x6f8d29e1
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp - 0x78]
mov dword [eax], esi
add esp, 0x8c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
test dword [ebp + 0x14], 0xf000
je 0x6f8d3a66
mov esi, dword [ebp - 0x58]
mov edi, str.OID.
mov ecx, 4
repe cmpsb byte [esi], byte es:[edi]
seta dl
sbb dl, 0
test dl, dl
jne 0x6f8d3912
mov esi, dword [ebp - 0x58]
lea eax, [esi + 4]
cmp byte [esi + 4], 0
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x40], eax
je 0x6f8d2dba
lea esi, [esi]
lea eax, [ebp - 0x40]
lea ebx, [ebp - 0x3c]
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], ebx
mov dword [esp], eax
mov dword [ebp - 0x3c], 0
call sym._ldap_int_parse_numericoid
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x58], eax
test ecx, ecx
jne 0x6f8d2b10
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x54], eax
mov edx, eax
movzx eax, byte [eax]
test al, al
je 0x6f8d2dba
mov esi, edx
sub esi, dword [ebp - 0x58]
mov edi, 2
mov dword [ebp - 0x70], esi
sub eax, 9
cmp al, 0x17
jbe 0x6f8d2dd0
movzx ebx, byte [edx]
mov eax, edx
nop
cmp bl, 0x3d
jne 0x6f8d2b10
lea esi, [eax + 1]
mov dword [ebp - 0x40], esi
movzx edx, byte [eax + 1]
lea ecx, [edx - 9]
cmp cl, 0x17
ja 0x6f8d2cc6
mov ebx, 0x800013
bt ebx, ecx
jae 0x6f8d2ccf
cmp dword [ebp - 0x50], 0x20
je 0x6f8d2c78
test dword [ebp + 0x14], 0x3000
jne 0x6f8d2b10
lea esi, [eax + 2]
mov dword [ebp - 0x40], esi
movzx edx, byte [eax + 2]
lea ecx, [edx - 9]
cmp cl, 0x17
ja 0x6f8d2cc6
mov ebx, 0x800013
bt ebx, ecx
jae 0x6f8d2ccf
add eax, 3
mov dword [ebp - 0x40], eax
movzx edx, byte [eax]
mov esi, eax
lea ecx, [edx - 9]
cmp cl, 0x17
ja 0x6f8d2cc6
lea esi, [esi]
nop
inc eax
bt ebx, ecx
jae 0x6f8d2ccf
mov dword [ebp - 0x40], eax
movzx edx, byte [eax]
mov esi, eax
lea ecx, [edx - 9]
cmp cl, 0x17
jbe 0x6f8d2cb0
cmp dl, 0x23
je 0x6f8d30d8
mov eax, dword [ebp + 0x14]
and eax, 0xf000
mov dword [ebp - 0x60], eax
je 0x6f8d2ce5
cmp edi, 2
je 0x6f8d2b10
mov ebx, dword [ebp + 0x14]
and ebx, 0xd0
jne 0x6f8d2d03
cmp dl, 0x22
je 0x6f8d35a0
cmp dword [ebp - 0x50], 0x20
je 0x6f8d3882
test dl, dl
je 0x6f8d2d24
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
je 0x6f8d2f80
cmp eax, 0x30
je 0x6f8d2f18
test eax, eax
je 0x6f8d2f80
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x64], 0
mov ebx, 1
and eax, 0x200
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jne 0x6f8d31a7
mov esi, ebx
jmp 0x6f8d36d3
lea ebx, [eax - 0x2b]
cmp bl, 1
jbe 0x6f8d2d60
cmp al, 0x3b
jne 0x6f8d3165
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and eax, 0x200
mov dword [ebp - 0x60], eax
je 0x6f8d321c
cmp byte [edi], 0
je 0x6f8d31a0
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x50]
cmp eax, 0x30
je 0x6f8d32c8
ja 0x6f8d2da5
cmp eax, 0x20
je 0x6f8d3399
test byte [ebp + 0x14], 0xe0
je 0x6f8d3399
lea eax, [edi + 1]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x40], eax
movzx eax, byte [edi + 1]
test al, al
jne 0x6f8d2a57
mov esi, dword [ebp - 0x5c]
dec esi
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp - 0x54]
mov ebx, 0xfffffffc
mov dword [eax], edi
jmp 0x6f8d2b19
mov ecx, 0x800013
bt ecx, eax
jae 0x6f8d2c3a
cmp dword [ebp - 0x50], 0x20
je 0x6f8d2df1
test dword [ebp + 0x14], 0x3000
jne 0x6f8d2b10
lea eax, [edx + 1]
mov dword [ebp - 0x40], eax
movzx ebx, byte [edx + 1]
lea ecx, [ebx - 9]
cmp cl, 0x17
ja 0x6f8d2c40
mov eax, 0x800013
bt eax, ecx
jae 0x6f8d2b10
add edx, 2
mov esi, 0x800013
lea esi, [esi]
mov dword [ebp - 0x40], edx
movzx ebx, byte [edx]
mov eax, edx
lea ecx, [ebx - 9]
cmp cl, 0x17
ja 0x6f8d2c40
inc edx
bt esi, ecx
jb 0x6f8d2e20
jmp 0x6f8d2b10
mov edx, 0x800013
bt edx, eax
jae 0x6f8d2a62
cmp dword [ebp - 0x50], 0x20
je 0x6f8d2e61
test dword [ebp + 0x14], 0x2000
jne 0x6f8d2b10
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x40], eax
jmp 0x6f8d2a68
mov eax, dword [ebp - 0x58]
lea ebx, [eax + 1]
mov dword [ebp - 0x40], ebx
movzx eax, byte [eax + 1]
test al, al
je 0x6f8d3a5c
mov edx, eax
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
jbe 0x6f8d2ee8
lea edx, [eax - 0x30]
cmp dl, 9
jbe 0x6f8d2ee8
cmp al, 0x2d
je 0x6f8d2ee8
cmp al, 0x3b
je 0x6f8d3529
mov ebx, dword [ebp - 0x40]
sub ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x6f8d2b10
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x54], eax
mov edx, eax
movzx eax, byte [eax]
test dword [ebp + 0x14], 0x200
je 0x6f8d2f00
test al, al
je 0x6f8d2dba
mov dword [ebp - 0x58], 0
mov edi, 1
jmp 0x6f8d2c2f
inc ebx
mov dword [ebp - 0x40], ebx
movzx eax, byte [ebx]
test al, al
jne 0x6f8d2e85
sub ebx, dword [ebp - 0x58]
jmp 0x6f8d2eac
test al, al
je 0x6f8d2dba
mov dword [ebp - 0x70], ebx
mov edi, 1
jmp 0x6f8d2c2f
mov dword [ebp - 0x40], 0
movzx edx, byte [esi]
mov edi, esi
xor eax, eax
test dl, dl
je 0x6f8d33b0
mov ecx, 0x20009
jmp 0x6f8d2f5b
cmp dl, 0x2f
je 0x6f8d33b0
cmp dl, 0x2c
je 0x6f8d33b0
mov edx, edi
lea edi, [edx + 1]
movzx edx, byte [edx + 1]
test dl, dl
je 0x6f8d33b0
cmp dl, 0x5c
jne 0x6f8d2f38
movzx ebx, byte [edi + 1]
lea edx, [edi + 1]
sub ebx, 0x2c
cmp bl, 0x11
ja 0x6f8d2b10
bt ecx, ebx
jae 0x6f8d2b10
inc eax
jmp 0x6f8d2f4c
mov ecx, dword [ebp - 0x68]
add ecx, dword [ebp - 0x74]
mov dword [ebp - 0x40], 0
mov edi, esi
mov dword [ebp - 0x64], 0
mov ebx, 1
cmp ecx, esi
jbe 0x6f8d304c
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x54], ebx
jmp 0x6f8d2fcc
lea edx, [eax - 0x20]
cmp dl, 0x5e
jbe 0x6f8d3008
test al, al
je 0x6f8d2b10
mov dword [ebp - 0x54], 4
inc edi
cmp ecx, edi
jbe 0x6f8d3046
movzx eax, byte [edi]
cmp al, 0x5c
jne 0x6f8d2fb0
movzx eax, byte [edi + 1]
lea ebx, [edi + 1]
test al, al
je 0x6f8d2b10
cmp al, 0x5c
je 0x6f8d2ffa
lea edx, [eax - 0x3b]
cmp dl, 3
jbe 0x6f8d2ffa
lea edx, [eax - 0x2b]
cmp dl, 1
ja 0x6f8d34c0
inc dword [ebp - 0x64]
mov edi, ebx
jmp 0x6f8d2fc7
mov edx, dword [ebp - 0x50]
test edx, edx
jne 0x6f8d3038
lea edx, [eax - 0x2b]
cmp dl, 1
jbe 0x6f8d3046
cmp al, 0x3b
je 0x6f8d3046
sub eax, 0x22
cmp al, 0x1c
ja 0x6f8d2fc7
mov ebx, 0x16000601
bt ebx, eax
jae 0x6f8d2fc7
jmp 0x6f8d2b10
cmp dword [ebp - 0x50], 0x10
jne 0x6f8d301b
lea edx, [eax - 0x2b]
cmp dl, 1
ja 0x6f8d301b
mov ebx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x80]
lea ecx, [esi + 1]
cmp ecx, edi
jae 0x6f8d389a
movzx eax, byte [edi - 1]
sub eax, 9
cmp al, 0x17
ja 0x6f8d389a
mov edx, 0x800013
bt edx, eax
jae 0x6f8d389a
cmp byte [edi - 2], 0x5c
je 0x6f8d389a
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x6f8d2b10
lea eax, [edi - 1]
cmp ecx, eax
jae 0x6f8d30b9
mov dword [ebp - 0x54], ebx
jmp 0x6f8d30aa
mov ebx, 0x800013
bt ebx, edx
jae 0x6f8d30b6
cmp byte [eax - 2], 0x5c
je 0x6f8d30b6
dec eax
cmp ecx, eax
je 0x6f8d30b6
movzx edx, byte [eax - 1]
sub edx, 9
cmp dl, 0x17
jbe 0x6f8d3095
mov ebx, dword [ebp - 0x54]
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and ecx, 0x200
mov dword [ebp - 0x60], ecx
jne 0x6f8d2d74
mov edi, eax
jmp 0x6f8d38ae
lea eax, [esi + 1]
mov dword [ebp - 0x40], eax
cmp byte [esi + 1], 0
mov dword [ebp - 0x54], eax
je 0x6f8d2dba
mov dword [ebp - 0x40], 0
movzx eax, byte [esi + 1]
mov edi, dword [ebp - 0x54]
test al, al
je 0x6f8d2d60
mov ecx, dword [ebp - 0x50]
mov edx, 0x800013
jmp 0x6f8d3141
lea ebx, [eax - 0x30]
cmp bl, 9
ja 0x6f8d3172
movzx eax, byte [edi + 1]
lea ebx, [eax - 0x30]
cmp bl, 9
jbe 0x6f8d3132
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 5
ja 0x6f8d2b10
movzx eax, byte [edi + 2]
add edi, 2
test al, al
je 0x6f8d2d60
cmp ecx, 0x20
je 0x6f8d2d50
ja 0x6f8d3188
test ecx, ecx
je 0x6f8d2d50
cmp ecx, 0x10
jne 0x6f8d3165
lea ebx, [eax - 0x2b]
cmp bl, 1
jbe 0x6f8d2d60
lea ebx, [eax - 9]
cmp bl, 0x17
ja 0x6f8d3110
bt edx, ebx
jb 0x6f8d31b0
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 5
jbe 0x6f8d3118
jmp 0x6f8d2b10
cmp ecx, 0x30
jne 0x6f8d3165
cmp al, 0x2f
je 0x6f8d2d60
cmp al, 0x2c
jne 0x6f8d3165
jmp 0x6f8d2d60
mov dword [ebp - 0x64], 0
mov edi, dword [ebp - 0x40]
jmp 0x6f8d2d84
test dword [ebp + 0x14], 0xf000
jne 0x6f8d2b10
movzx eax, byte [edi]
mov edx, edi
test al, al
je 0x6f8d3208
mov ecx, dword [ebp - 0x50]
jmp 0x6f8d31ed
test ecx, ecx
je 0x6f8d3298
cmp ecx, 0x10
jne 0x6f8d31e4
sub eax, 0x2b
cmp al, 1
jbe 0x6f8d3208
movzx eax, byte [edx + 1]
inc edx
test al, al
je 0x6f8d3208
cmp ecx, 0x20
je 0x6f8d3298
jbe 0x6f8d31d0
cmp ecx, 0x30
jne 0x6f8d31e4
cmp al, 0x2f
je 0x6f8d3208
cmp al, 0x2c
jne 0x6f8d31e4
lea esi, [esi]
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x40], edx
and eax, 0x200
mov dword [ebp - 0x60], eax
jne 0x6f8d3b9f
mov esi, dword [ebp - 0x54]
sub edi, esi
mov eax, edi
shr eax, 0x1f
add edi, eax
mov eax, dword [ebp + 0x18]
sar edi, 1
mov dword [esp + 4], eax
lea eax, [edi + 1]
mov dword [esp], eax
mov dword [ebp - 0x6c], edi
call sym._ber_memalloc_x
mov dword [ebp - 0x64], eax
mov ebx, eax
test eax, eax
je 0x6f8d3571
mov eax, edi
test edi, edi
je 0x6f8d3aa1
mov edi, ebx
add ebx, eax
mov dword [ebp - 0x54], ebx
lea ebx, [ebp - 0x3c]
mov edx, ebx
mov eax, esi
inc edi
add esi, 2
call sym._hexstr2bin.isra.0
movzx edx, byte [ebp - 0x3c]
mov byte [edi - 1], dl
cmp dword [ebp - 0x54], edi
jne 0x6f8d3260
mov esi, dword [ebp - 0x54]
mov eax, dword [ebp + 0x14]
mov byte [esi], 0
mov ebx, 2
and eax, 0x200
mov dword [ebp - 0x60], eax
jmp 0x6f8d2d3b
lea ebx, [eax - 0x2b]
cmp bl, 1
jbe 0x6f8d3208
cmp al, 0x3b
jne 0x6f8d31e4
jmp 0x6f8d3208
cmp byte [edi], 0
je 0x6f8d31a0
mov dword [ebp - 0x64], 0
lea esi, [esi]
cmp byte [edi], 0x2c
je 0x6f8d2da5
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp - 0x60]
xor ebx, ebx
mov dword [eax], edi
test esi, esi
jne 0x6f8d2b63
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp - 0x5c]
mov dword [esp + 4], eax
lea eax, [edi + edi*2 + 3]
shl eax, 3
mov dword [esp], eax
call sym._ber_memalloc_x
mov esi, eax
test eax, eax
je 0x6f8d3c3c
mov edi, dword [ebp - 0x5c]
mov dword [esp], esi
lea eax, [edi*4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x4c]
mov dword [esp + 4], eax
call dword [sym.imp.ucrtbase.dll_memmove]
mov dword [esi + edi*4], 0
mov dword [ebp - 0x78], esi
jmp 0x6f8d2b63
lea ecx, [esi + 1]
mov eax, edi
cmp edi, ecx
jbe 0x6f8d3374
mov dword [ebp - 0x54], ebx
jmp 0x6f8d3365
mov ebx, 0x800013
bt ebx, edx
jae 0x6f8d3371
cmp byte [eax - 2], 0x5c
je 0x6f8d3371
dec eax
cmp eax, ecx
je 0x6f8d3371
movzx edx, byte [eax - 1]
sub edx, 9
cmp dl, 0x17
jbe 0x6f8d3350
mov ebx, dword [ebp - 0x54]
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and ecx, 0x200
mov dword [ebp - 0x60], ecx
je 0x6f8d3a00
cmp byte [edi], 0
je 0x6f8d31a0
mov dword [ebp - 0x64], 0
cmp byte [edi], 0x2b
je 0x6f8d2da5
jmp 0x6f8d32d1
lea ebx, [esi + 1]
cmp ebx, edi
jae 0x6f8d3430
movzx ecx, byte [edi - 1]
lea edx, [ecx - 9]
cmp dl, 0x17
ja 0x6f8d3430
mov ecx, 0x800013
bt ecx, edx
jae 0x6f8d3430
cmp byte [edi - 2], 0x5c
je 0x6f8d3430
mov edx, dword [ebp - 0x60]
test edx, edx
jne 0x6f8d2b10
lea edx, [edi - 1]
cmp ebx, edx
jae 0x6f8d3414
mov dword [ebp - 0x54], eax
jmp 0x6f8d3405
mov eax, 0x800013
bt eax, ecx
jae 0x6f8d3411
cmp byte [edx - 2], 0x5c
je 0x6f8d3411
dec edx
cmp ebx, edx
je 0x6f8d3411
movzx ecx, byte [edx - 1]
sub ecx, 9
cmp cl, 0x17
jbe 0x6f8d33f0
mov eax, dword [ebp - 0x54]
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and ebx, 0x200
mov dword [ebp - 0x60], ebx
jne 0x6f8d32b1
mov edi, edx
jmp 0x6f8d3445
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and ebx, 0x200
mov dword [ebp - 0x60], ebx
jne 0x6f8d32b1
sub edi, esi
sub edi, eax
test eax, eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x6c], edi
je 0x6f8d385a
mov edi, dword [ebp - 0x6c]
mov dword [esp + 4], eax
lea eax, [edi + 1]
mov dword [esp], eax
call sym._ber_memalloc_x
mov dword [ebp - 0x64], eax
mov edx, eax
test eax, eax
je 0x6f8d3571
test edi, edi
je 0x6f8d3baf
add edx, edi
xor ecx, ecx
lea esi, [esi]
movzx ebx, byte [esi + ecx]
cmp bl, 0x5c
jne 0x6f8d3497
movzx ebx, byte [esi + ecx + 1]
inc ecx
mov byte [eax], bl
inc eax
inc ecx
cmp edx, eax
jne 0x6f8d3488
mov eax, dword [ebp + 0x14]
mov byte [edx], 0
mov ebx, 1
and eax, 0x200
mov dword [ebp - 0x60], eax
jmp 0x6f8d2d3b
lea edx, [eax - 9]
cmp dl, 0x1a
jbe 0x6f8d357f
lea edx, [eax - 0x30]
cmp dl, 9
ja 0x6f8d358d
movzx eax, byte [edi + 2]
lea edx, [eax - 0x30]
cmp dl, 9
jbe 0x6f8d34f2
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 5
ja 0x6f8d2b10
mov eax, ebx
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x84], ecx
call sym._hexstr2bin.isra.0
movzx eax, byte [ebp - 0x3c]
add dword [ebp - 0x64], 2
mov ecx, dword [ebp - 0x84]
sub eax, 0x20
cmp al, 0x5f
mov eax, 4
cmovb eax, dword [ebp - 0x54]
add edi, 2
mov dword [ebp - 0x54], eax
jmp 0x6f8d2fc7
test dword [ebp + 0x14], 0xf000
jne 0x6f8d2b10
mov edx, dword [ebp - 0x40]
jmp 0x6f8d3552
mov eax, 0x5ff9
bt eax, ecx
jae 0x6f8d2ef3
inc edx
mov dword [ebp - 0x40], edx
movzx ecx, byte [edx]
mov eax, ecx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x6f8d354e
sub ecx, 0x2d
cmp cl, 0xe
jbe 0x6f8d3540
sub ebx, dword [ebp - 0x58]
jmp 0x6f8d2eac
mov ebx, 0xfffffffc
mov esi, dword [ebp - 0x5c]
dec esi
jmp 0x6f8d2b19
mov esi, 0x6800013
bt esi, edx
jb 0x6f8d2ffa
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 5
jbe 0x6f8d34d8
jmp 0x6f8d2b10
lea eax, [esi + 1]
mov dword [ebp - 0x40], eax
cmp byte [esi + 1], 0
mov dword [ebp - 0x54], eax
je 0x6f8d2dba
mov dword [ebp - 0x40], 0
movzx edx, byte [esi + 1]
test dl, dl
je 0x6f8d2b10
mov eax, dword [ebp - 0x54]
mov esi, 0x1e000603
jmp 0x6f8d35e6
cmp dl, 0x22
je 0x6f8d3630
mov edx, eax
lea eax, [edx + 1]
movzx edx, byte [edx + 1]
test dl, dl
je 0x6f8d2b10
movzx ecx, byte [eax + 1]
cmp dl, 0x5c
jne 0x6f8d35d0
test cl, cl
je 0x6f8d2b10
cmp cl, 0x5c
lea edx, [eax + 1]
setne al
sub ecx, 0x22
cmp cl, 0x1c
ja 0x6f8d3612
mov edi, esi
shr edi, cl
mov ecx, edi
not ecx
and eax, ecx
test al, al
jne 0x6f8d3619
inc ebx
jmp 0x6f8d35d7
mov ecx, dword [ebp - 0x60]
test ecx, ecx
jne 0x6f8d2b10
inc ebx
jmp 0x6f8d35d7
lea edi, [eax + 1]
mov edx, 0x800013
test cl, cl
je 0x6f8d364c
lea esi, [esi]
sub ecx, 9
cmp cl, 0x17
jbe 0x6f8d3770
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and esi, 0x200
mov dword [ebp - 0x60], esi
jne 0x6f8d2d74
mov esi, dword [ebp - 0x54]
sub eax, esi
sub eax, ebx
mov dword [ebp - 0x6c], eax
test ebx, ebx
je 0x6f8d3790
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp - 0x6c]
mov dword [esp + 4], eax
lea eax, [edi + 1]
mov dword [esp], eax
call sym._ber_memalloc_x
mov dword [ebp - 0x64], eax
test eax, eax
je 0x6f8d3571
test edi, edi
je 0x6f8d3aa9
add edi, eax
mov esi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x60]
mov edx, edi
lea esi, [esi]
movzx ebx, byte [esi + ecx]
cmp bl, 0x5c
jne 0x6f8d36b7
movzx ebx, byte [esi + ecx + 1]
inc ecx
mov byte [eax], bl
inc eax
inc ecx
cmp edx, eax
jne 0x6f8d36a8
mov byte [edx], 0
mov eax, dword [ebp - 0x40]
cmp byte [eax], 0
je 0x6f8d37b2
mov esi, 1
mov eax, dword [ebp + 0x18]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x70]
add eax, 0x19
mov dword [esp], eax
call sym._ber_memalloc_x
mov edi, eax
test eax, eax
je 0x6f8d37be
mov ebx, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x58]
lea eax, [eax + 0x18]
or esi, 0x20
mov dword [eax - 0x18], ebx
mov dword [edi + 4], eax
mov dword [esp + 8], ebx
mov ebx, dword [sym.imp.ucrtbase.dll_memmove]
mov dword [esp + 4], ecx
mov dword [esp], eax
call ebx
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x4c]
mov byte [edi + eax + 0x18], 0
mov eax, dword [ebp - 0x6c]
mov dword [edi + 0x10], esi
mov esi, dword [ebp - 0x5c]
mov dword [edi + 8], eax
mov eax, dword [ebp - 0x64]
mov dword [edi + 0x14], 0
mov dword [edi + 0xc], eax
lea eax, [esi + 1]
mov dword [ecx + esi*4], edi
cmp eax, dword [ebp - 0x7c]
je 0x6f8d37e6
mov dword [ebp - 0x64], 0
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x6c], 0
jmp 0x6f8d2d84
bt edx, ecx
jae 0x6f8d364c
movzx ecx, byte [edi + 1]
inc edi
test cl, cl
jne 0x6f8d3640
jmp 0x6f8d364c
mov edi, dword [ebp + 0x18]
mov dword [esp + 4], eax
mov dword [esp], esi
mov dword [esp + 8], edi
call sym._ber_strndup_x
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x40]
cmp byte [eax], 0
jne 0x6f8d36ce
mov ebx, 1
mov esi, ebx
jmp 0x6f8d36d3
mov esi, dword [ebp - 0x5c]
dec esi
mov edi, dword [ebp - 0x64]
test edi, edi
je 0x6f8d3c44
mov eax, dword [ebp + 0x18]
mov dword [esp], edi
mov ebx, 0xfffffff6
mov dword [esp + 4], eax
call sym._ber_memfree_x
jmp 0x6f8d2b19
mov eax, dword [ebp - 0x7c]
mov esi, dword [ebp + 0x18]
lea edi, [ebp - 0x38]
shl eax, 3
cmp dword [ebp - 0x4c], edi
je 0x6f8d3948
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x4c]
mov dword [esp + 8], esi
mov dword [esp], eax
call sym._ber_memrealloc_x
mov esi, eax
test eax, eax
je 0x6f8d3c2c
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x4c], esi
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x5c], eax
add eax, eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x6c], 0
jmp 0x6f8d2d84
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp - 0x68]
mov ebx, 0xfffffffc
mov dword [eax], esi
jmp 0x6f8d2b7c
mov dword [esp + 8], eax
mov ebx, 1
mov dword [esp + 4], edi
mov dword [esp], esi
call sym._ber_strndup_x
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 0x14]
and eax, 0x200
mov dword [ebp - 0x60], eax
jmp 0x6f8d2d3b
test dl, dl
jne 0x6f8d3980
mov eax, dword [ebp - 0x5c]
mov edi, esi
mov dword [ebp - 0x54], edi
dec eax
mov esi, eax
jmp 0x6f8d2dbe
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x40], edi
and eax, 0x200
mov dword [ebp - 0x60], eax
jne 0x6f8d2d74
mov eax, dword [ebp - 0x64]
sub edi, esi
sub edi, eax
test eax, eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x6c], edi
jne 0x6f8d3af9
test bl, 4
je 0x6f8d3ad3
mov dword [esp + 4], eax
lea eax, [edi + 1]
mov dword [esp], eax
call sym._ber_memalloc_x
mov dword [ebp - 0x64], eax
test eax, eax
je 0x6f8d3571
mov dword [esp + 4], esi
mov esi, eax
mov ebx, 4
mov dword [esp + 8], edi
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_memmove]
mov eax, dword [ebp + 0x14]
mov byte [esi + edi], 0
and eax, 0x200
mov dword [ebp - 0x60], eax
jmp 0x6f8d2d3b
mov esi, dword [ebp - 0x58]
mov edi, str.oid.
mov ecx, 4
repe cmpsb byte [esi], byte es:[edi]
seta dl
sbb dl, 0
test dl, dl
je 0x6f8d2bc6
test al, al
jne 0x6f8d2e70
mov eax, dword [ebp - 0x5c]
dec eax
mov esi, eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x54], eax
jmp 0x6f8d2dbe
mov dword [esp + 4], esi
mov dword [esp], eax
call sym._ber_memalloc_x
mov esi, eax
mov eax, dword [ebp - 0x7c]
test esi, esi
je 0x6f8d3c2f
shl eax, 2
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp], esi
call ebx
jmp 0x6f8d3818
mov dword [ebp - 0x40], 0
movzx eax, byte [esi]
mov edi, esi
test al, al
je 0x6f8d3338
mov ecx, 0x16000601
jmp 0x6f8d39c5
lea edx, [eax - 0x2b]
cmp dl, 1
jbe 0x6f8d3338
cmp al, 0x3b
je 0x6f8d3338
mov eax, edi
lea edi, [eax + 1]
movzx eax, byte [eax + 1]
test al, al
je 0x6f8d3338
cmp al, 0x5c
jne 0x6f8d39a0
movzx edx, byte [edi + 1]
lea eax, [edi + 1]
test dl, dl
je 0x6f8d2b10
cmp dl, 0x5c
je 0x6f8d39f0
sub edx, 0x22
cmp dl, 0x1c
jbe 0x6f8d39f8
mov edi, dword [ebp - 0x60]
test edi, edi
jne 0x6f8d2b10
inc ebx
jmp 0x6f8d39b6
bt ecx, edx
jae 0x6f8d39e5
inc ebx
jmp 0x6f8d39b6
sub eax, esi
sub eax, ebx
mov dword [ebp - 0x6c], eax
test ebx, ebx
je 0x6f8d3790
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp - 0x6c]
mov dword [esp + 4], eax
lea eax, [edi + 1]
mov dword [esp], eax
call sym._ber_memalloc_x
mov dword [ebp - 0x64], eax
mov edx, eax
test eax, eax
je 0x6f8d3571
test edi, edi
je 0x6f8d3aa9
mov ecx, dword [ebp - 0x60]
add edx, edi
lea esi, [esi]
movzx ebx, byte [esi + ecx]
cmp bl, 0x5c
jne 0x6f8d3a4f
movzx ebx, byte [esi + ecx + 1]
inc ecx
mov byte [eax], bl
inc eax
inc ecx
cmp edx, eax
jne 0x6f8d3a40
jmp 0x6f8d36bf
mov ebx, 1
jmp 0x6f8d2eb4
mov eax, dword [ebp - 0x58]
mov dword [esp + 8], 4
mov dword [esp + 4], str.oid.
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll__strnicmp]
test eax, eax
mov eax, dword [ebp - 0x40]
jne 0x6f8d3abb
lea esi, [eax + 4]
cmp byte [eax + 4], 0
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x40], esi
jne 0x6f8d2be0
jmp 0x6f8d2dba
mov esi, dword [ebp - 0x64]
jmp 0x6f8d327c
mov edx, dword [ebp - 0x64]
jmp 0x6f8d36bf
mov ebx, 0xfffffffc
jmp 0x6f8d29e1
cmp byte [eax], 0
mov dword [ebp - 0x58], eax
jne 0x6f8d2e70
mov esi, dword [ebp - 0x5c]
mov dword [ebp - 0x54], eax
dec esi
jmp 0x6f8d2dbe
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x6c]
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._ber_strndup_x
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 0x14]
and eax, 0x200
mov dword [ebp - 0x60], eax
jmp 0x6f8d2d3b
mov edi, dword [ebp - 0x6c]
mov dword [esp + 4], eax
lea eax, [edi + 1]
mov dword [esp], eax
call sym._ber_memalloc_x
mov dword [ebp - 0x64], eax
test eax, eax
je 0x6f8d3571
test edi, edi
je 0x6f8d3c11
xor eax, eax
mov dword [ebp - 0x84], ebx
xor edi, edi
mov dword [ebp - 0x54], esi
mov ebx, eax
jmp 0x6f8d3b39
mov byte [esi], dl
inc ebx
mov edi, eax
cmp dword [ebp - 0x6c], ebx
jbe 0x6f8d3b80
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x64]
movzx edx, byte [eax + edi]
add esi, ebx
lea eax, [edi + 1]
cmp dl, 0x5c
jne 0x6f8d3b2f
mov ecx, dword [ebp - 0x54]
add ecx, eax
mov dword [ebp - 0x80], ecx
movzx ecx, byte [ecx]
mov byte [ebp - 0x60], cl
mov edx, ecx
cmp cl, 0x5c
je 0x6f8d3b74
sub ecx, 0x2b
cmp cl, 1
jbe 0x6f8d3b74
mov ecx, edx
sub ecx, 0x3b
cmp cl, 3
ja 0x6f8d3bb7
movzx eax, byte [ebp - 0x60]
add edi, 2
inc ebx
mov byte [esi], al
jmp 0x6f8d3b34
mov esi, ebx
mov ebx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x64]
mov byte [eax + esi], 0
mov eax, dword [ebp + 0x14]
and eax, 0x200
mov dword [ebp - 0x60], eax
jmp 0x6f8d2d3b
cmp byte [edx], 0
je 0x6f8d31a0
mov edi, edx
jmp 0x6f8d2d7d
mov edx, dword [ebp - 0x64]
jmp 0x6f8d349f
mov ecx, edx
sub ecx, 9
cmp cl, 0x1a
jbe 0x6f8d3c18
movzx ecx, byte [ebp - 0x60]
sub ecx, 0x30
cmp cl, 9
jbe 0x6f8d3bdc
movzx edx, byte [ebp - 0x60]
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 5
ja 0x6f8d3c4e
mov ecx, dword [ebp - 0x54]
movzx edx, byte [ecx + edi + 2]
lea ecx, [edx - 0x30]
cmp cl, 9
jbe 0x6f8d3bf7
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 5
ja 0x6f8d3c4e
mov eax, dword [ebp - 0x80]
lea edx, [ebp - 0x3c]
inc ebx
add edi, 3
call sym._hexstr2bin.isra.0
movzx eax, byte [ebp - 0x3c]
mov byte [esi], al
jmp 0x6f8d3b34
xor esi, esi
jmp 0x6f8d3b88
mov edx, 0x6800013
shr edx, cl
mov ecx, edx
and cl, 1
jne 0x6f8d3b74
jmp 0x6f8d3bcd
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x5c], eax
mov ebx, 0xfffffff6
jmp 0x6f8d3576
mov esi, edi
dec esi
jmp 0x6f8d37c2
mov ebx, 0xfffffff6
jmp 0x6f8d2b19
mov edi, eax
jmp 0x6f8d3b34