Function at 0x42554f
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push ebx
push esi
push edi
xor edi, edi
or esi, 0xffffffff
mov dword [ebp - 8], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x30], esi
mov eax, 0x4f7f44
mov dword [eax - 4], edi
mov dword [eax], esi
mov dword [eax + 4], edi
mov dword [eax + 8], esi
mov word [eax + 0xe], di
add eax, 0x20
cmp eax, 0x4fb144
jl 0x42557a
push dword [ebp + 8]
xor ebx, ebx
cmp dword [ebp + 0x14], edi
mov dword [ebp - 0x10], ebx
je 0x4255a7
call fcn.00484428
jmp 0x4255ac
call fcn.00483b20
mov dword [ebp - 0x2c], eax
xor eax, eax
cmp dword [ebp + 0xc], eax
pop ecx
mov dword [ebp - 4], eax
sete dl
dec edx
and edx, 0xffffffe0
add edx, 0x20
cmp dword [0x4ea828], eax
mov byte [ebp + 0xf], dl
je 0x425ee0
cmp dword [ebp - 0x2c], eax
jle 0x425ed2
cmp ebx, 0x18f
jge 0x425ed0
xor eax, eax
cmp dword [ebp + 0x14], eax
je 0x4255f9
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 4]
mov cx, word [ecx + edx*2]
jmp 0x425604
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
movzx cx, byte [ecx + edx]
cmp dword [ebp - 0x14], eax
jne 0x42562a
cmp cx, 0x41
jb 0x425615
cmp cx, 0x5a
jbe 0x425623
cmp cx, 0xc0
jb 0x42562a
cmp cx, 0xdf
ja 0x42562a
movsx dx, byte [ebp + 0xf]
or ecx, edx
movzx edx, cx
cmp edx, 0x2e
jg 0x425752
je 0x425700
cmp edx, 0x24
je 0x42577e
cmp edx, 0x27
jle 0x42576d
cmp edx, 0x29
jle 0x425661
cmp edx, 0x2b
jle 0x42577e
jmp 0x42576d
cmp dword [ebp - 0x14], eax
je 0x4256af
cmp dword [ebp - 8], eax
je 0x425680
and dword [ebp - 8], 0
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 4
jmp 0x42568f
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], 0
mov word [eax + 0x4f7f50], cx
je 0x4256a2
mov dword [eax + 0x4f7f44], edi
inc ebx
and dword [ebp - 0x14], 0
mov dword [ebp - 0x10], ebx
jmp 0x425e5b
cmp cx, 0x28
jne 0x4256d2
mov ecx, ebx
push 1
shl ecx, 5
mov dword [ebp - 0x3c], ebx
pop eax
inc ebx
mov dword [ecx + 0x4f7f40], eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], eax
jmp 0x425ead
cmp dword [ebp - 0xc], eax
je 0x4256f3
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], 4
jne 0x4256f3
cmp dword [ebp - 8], 0
jne 0x4256f3
and word [eax + 0x4f7f32], 0
and dword [ebp - 0xc], 0
inc edi
mov dword [ebp - 0x18], edi
jmp 0x425e5b
cmp dword [ebp - 0x14], eax
je 0x42573a
cmp dword [ebp - 8], eax
mov dword [ebp - 0x14], eax
je 0x425722
and dword [ebp - 8], 0
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 4
jmp 0x425731
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
mov word [eax + 0x4f7f50], cx
jmp 0x425749
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 3
cmp dword [ebp - 0xc], 0
jmp 0x425b57
mov eax, edx
sub eax, 0x5b
je 0x425b1b
dec eax
je 0x425b08
sub eax, 0x20
je 0x4259f6
movsx eax, byte [0x4f7ac4]
xor esi, esi
cmp edx, eax
jne 0x425895
xor esi, esi
cmp dword [ebp - 0x14], esi
je 0x4257bf
cmp dword [ebp - 8], esi
mov dword [ebp - 0x14], esi
je 0x4257a1
mov eax, ebx
mov dword [ebp - 8], esi
shl eax, 5
mov dword [eax + 0x4f7f40], 4
jmp 0x4257b0
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], esi
mov word [eax + 0x4f7f50], cx
jmp 0x4259e2
cmp cx, 0x2a
jne 0x425818
cmp ebx, esi
je 0x425807
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], 3
jne 0x425807
dec ebx
cmp dword [ebp - 0xc], esi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 8], 1
je 0x425e61
mov ecx, dword [ebp - 0x18]
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f44], ecx
mov word [eax + 0x4f7f52], 1
jmp 0x425e5b
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0xd
jmp 0x425881
cmp cx, 0x2b
jne 0x42582f
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 6
jmp 0x425881
cmp dword [ebp - 8], esi
je 0x425850
mov eax, ebx
mov dword [ebp - 8], esi
shl eax, 5
inc ebx
mov dword [eax + 0x4f7f40], 4
mov word [eax + 0x4f7f50], 0xd
movsx eax, byte [0x4f7ac4]
cmp edx, eax
jne 0x42586c
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 7
jmp 0x425881
cmp cx, 0x24
jne 0x425881
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 8
cmp dword [ebp - 0xc], 0
je 0x425e57
mov eax, ebx
shl eax, 5
jmp 0x4259e8
xor edi, edi
cmp dword [ebp - 0x14], edi
je 0x42597e
cmp edx, 0x44
mov dword [ebp - 0x14], edi
je 0x425925
cmp edx, 0x53
je 0x425911
cmp edx, 0x57
je 0x4258fd
cmp edx, 0x64
je 0x4258e9
cmp edx, 0x73
je 0x4258d5
cmp edx, 0x77
jne 0x425939
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0x1a
jmp 0x4259df
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0x16
jmp 0x4259df
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0x11
jmp 0x4259df
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0x1b
jmp 0x4259df
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0x17
jmp 0x4259df
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0x12
jmp 0x4259df
cmp cx, 0x66
jne 0x425944
push 0xc
pop ecx
jmp 0x42597e
cmp cx, 0x6e
jne 0x42594e
push 0xa
jmp 0x425941
cmp cx, 0x72
jne 0x425958
push 0xd
jmp 0x425941
cmp cx, 0x74
jne 0x425962
push 9
jmp 0x425941
cmp cx, 0x76
jne 0x42596c
push 0xb
jmp 0x425941
cmp cx, 0x70
je 0x425978
cmp cx, 0x50
jne 0x42597e
push 0xd
pop ecx
push 1
pop esi
cmp dword [ebp - 8], edi
je 0x425997
mov eax, ebx
mov dword [ebp - 8], edi
shl eax, 5
mov dword [eax + 0x4f7f40], 4
jmp 0x4259a6
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], edi
mov word [eax + 0x4f7f50], cx
je 0x4259bb
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0x4f7f44], ecx
inc ebx
cmp esi, edi
mov dword [ebp - 0x10], ebx
je 0x425e5b
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
mov word [eax + 0x4f7f50], 0xa
cmp dword [ebp - 0xc], edi
je 0x425e57
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0x4f7f44], ecx
jmp 0x425e57
xor edx, edx
cmp dword [ebp - 0x14], edx
je 0x425a43
cmp dword [ebp - 8], edx
je 0x425a16
mov eax, ebx
mov dword [ebp - 8], edx
shl eax, 5
mov dword [eax + 0x4f7f40], 4
jmp 0x425a25
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], edx
mov word [eax + 0x4f7f50], cx
je 0x425a37
mov dword [eax + 0x4f7f44], edi
inc ebx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x10], ebx
jmp 0x425e5b
cmp dword [ebp - 0xc], edx
je 0x425a5e
mov ecx, dword [ebp - 0x3c]
cmp ecx, esi
je 0x425a5e
shl ecx, 5
mov dword [ecx + 0x4f7f40], 9
jmp 0x425a92
cmp ebx, edx
jle 0x425a81
mov eax, ebx
push 0x3200
shl eax, 5
lea eax, [eax + 0x4f7f40]
lea ecx, [eax - 0x20]
push ecx
push eax
call fcn.00483fe0
add esp, 0xc
xor edx, edx
lea ecx, [ebx - 1]
shl ecx, 5
inc ebx
mov dword [ecx + 0x4f7f40], 9
cmp dword [ebp - 0xc], edx
je 0x425ab1
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], 4
jne 0x425ab1
cmp dword [ebp - 8], edx
jne 0x425ab1
mov word [eax + 0x4f7f32], dx
mov eax, ebx
mov dword [ebp - 0x28], ebx
shl eax, 5
cmp dword [ebp - 0xc], edx
mov dword [eax + 0x4f7f40], 0xa
je 0x425ace
mov dword [eax + 0x4f7f44], edi
inc ebx
mov dword [ebp - 0x30], ebx
lea eax, [ebx + 1]
mov word [ecx + 0x4f7f50], ax
mov eax, ebx
shl eax, 5
inc ebx
cmp dword [ebp - 0xc], edx
mov dword [eax + 0x4f7f40], 0xb
mov dword [ebp - 0x10], ebx
je 0x425e61
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f44], edi
jmp 0x425e5b
xor edx, edx
cmp dword [ebp - 0x14], edx
jne 0x425b22
mov dword [ebp - 0x14], 1
jmp 0x425e5b
xor edx, edx
cmp dword [ebp - 0x14], edx
je 0x425b68
cmp dword [ebp - 8], edx
mov dword [ebp - 0x14], edx
je 0x425b3e
mov eax, ebx
mov dword [ebp - 8], edx
shl eax, 5
mov dword [eax + 0x4f7f40], 4
jmp 0x425b4d
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], edx
mov word [eax + 0x4f7f50], cx
je 0x425e57
mov dword [eax + 0x4f7f44], edi
jmp 0x425e57
push 0x400
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, ebx
mov edi, eax
shl esi, 5
push 0x400
push 0x40
mov dword [ebp - 0x4c], edi
mov dword [esi + 0x4f7f54], edi
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test edi, edi
mov dword [ebp - 0x44], eax
mov dword [esi + 0x4f7f58], eax
je 0x425ec6
xor ecx, ecx
cmp eax, ecx
je 0x425ec6
mov eax, dword [ebp - 4]
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x34], ecx
mov dword [esi + 0x4f7f5c], ecx
mov ecx, dword [ebp + 8]
inc eax
mov dword [ebp - 4], eax
lea edx, [ecx + eax*2]
lea eax, [ecx + eax*2 + 2]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x2c]
jge 0x425e22
cmp dword [ebp + 0x14], 0
je 0x425bf0
mov eax, dword [ebp - 0x1c]
mov cx, word [eax]
jmp 0x425bf8
mov ecx, dword [ebp + 8]
movzx cx, byte [eax + ecx]
cmp cx, 0x41
jb 0x425c04
cmp cx, 0x5a
jbe 0x425c12
cmp cx, 0xc0
jb 0x425c19
cmp cx, 0xdf
ja 0x425c19
movsx ax, byte [ebp + 0xf]
or ecx, eax
movzx eax, cx
cmp eax, 0x5d
je 0x425e22
movsx edx, byte [0x4f7ac4]
cmp eax, edx
jne 0x425c47
inc dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
mov dword [ebp - 0x24], 1
jmp 0x425e29
cmp dword [ebp - 0x24], 0
je 0x425c58
mov eax, dword [ebp - 0x44]
lea edi, [ebp - 0x40]
mov dword [ebp - 0x38], eax
jmp 0x425c61
mov eax, dword [ebp - 0x4c]
lea edi, [ebp - 0x48]
mov dword [ebp - 0x38], eax
cmp cx, 0x5c
jne 0x425d7f
xor edx, edx
cmp dword [ebp + 0x14], edx
je 0x425c85
inc dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
mov ecx, dword [ebp - 0x1c]
mov cx, word [ecx]
jmp 0x425c9d
inc dword [ebp - 4]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
movzx cx, byte [edx + ecx]
xor edx, edx
cmp cx, 0x66
jne 0x425caa
push 0xc
jmp 0x425d7e
cmp cx, 0x6e
je 0x425d7c
cmp cx, 0x72
jne 0x425cc1
push 0xd
jmp 0x425d7e
cmp cx, 0x74
jne 0x425cce
push 9
jmp 0x425d7e
cmp cx, 0x76
jne 0x425cdb
push 0xb
jmp 0x425d7e
cmp cx, 0x64
jne 0x425cf2
cmp dword [ebp - 0x24], edx
je 0x425cfd
or dword [esi + 0x4f7f5c], 2
jmp 0x425e0f
cmp cx, 0x44
jne 0x425d09
cmp dword [ebp - 0x24], edx
je 0x425ce6
or dword [esi + 0x4f7f5c], 1
jmp 0x425e0f
cmp cx, 0x73
jne 0x425d20
cmp dword [ebp - 0x24], edx
je 0x425d2b
or dword [esi + 0x4f7f5c], 4
jmp 0x425e0f
cmp cx, 0x53
jne 0x425d37
cmp dword [ebp - 0x24], edx
je 0x425d14
or dword [esi + 0x4f7f5c], 8
jmp 0x425e0f
cmp cx, 0x77
jne 0x425d4e
cmp dword [ebp - 0x24], edx
je 0x425d59
or dword [esi + 0x4f7f5c], 0x20
jmp 0x425e0f
cmp cx, 0x57
jne 0x425d65
cmp dword [ebp - 0x24], edx
je 0x425d42
or dword [esi + 0x4f7f5c], 0x10
jmp 0x425e0f
cmp cx, 0x70
je 0x425d71
cmp cx, 0x50
jne 0x425d7f
mov ecx, dword [edi]
mov word [eax + ecx*2], 0xd
inc ecx
mov dword [edi], ecx
push 0xa
pop ecx
mov edx, dword [edi]
mov word [eax + edx*2], cx
inc edx
cmp dword [ebp + 0x14], 0
mov dword [edi], edx
je 0x425d99
mov eax, dword [ebp - 0x20]
cmp word [eax], 0x2d
je 0x425da9
jmp 0x425e0f
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 4]
cmp byte [ebx + eax + 1], 0x2d
mov ebx, dword [ebp - 0x10]
jne 0x425e0f
add dword [ebp - 4], 2
add dword [ebp - 0x20], 4
add dword [ebp - 0x1c], 4
cmp dword [ebp + 0x14], 0
movzx ecx, cl
je 0x425dc6
mov eax, dword [ebp - 0x1c]
mov ax, word [eax]
jmp 0x425dd4
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + 8]
movzx ax, byte [eax + ebx]
mov ebx, dword [ebp - 0x10]
cmp ax, 0x41
jb 0x425de0
cmp ax, 0x5a
jbe 0x425dec
cmp ax, 0xc0
jb 0x425df6
cmp ax, 0xdf
ja 0x425df6
movsx bx, byte [ebp + 0xf]
or eax, ebx
mov ebx, dword [ebp - 0x10]
movzx eax, al
cmp ecx, eax
jge 0x425e0f
mov ebx, dword [ebp - 0x38]
inc ecx
mov word [ebx + edx*2], cx
inc edx
cmp ecx, eax
mov dword [edi], edx
jl 0x425dfd
mov ebx, dword [ebp - 0x10]
inc dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
cmp dword [edi], 0x1ff
jb 0x425e29
mov dword [ebp - 0x34], 1
cmp dword [ebp - 0x34], 0
je 0x425bd6
mov ax, word [ebp + 0x10]
cmp dword [ebp - 0xc], 0
mov word [esi + 0x4f7f50], ax
je 0x425e4d
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x4f7f44], eax
mov dword [esi + 0x4f7f40], 5
inc ebx
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0xc], 0
jne 0x425ebe
or esi, 0xffffffff
cmp dword [ebp - 0x30], esi
je 0x425eaa
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], 0xb
je 0x425eaa
cmp dword [ebp - 0x28], esi
je 0x425e92
mov edx, dword [ebp - 0x28]
lea ecx, [ebx + 1]
shl edx, 5
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x30], esi
mov word [edx + 0x4f7f50], cx
lea ecx, [ebx + 1]
inc ebx
mov word [eax + 0x4f7f50], cx
mov dword [eax + 0x4f7f40], 0xc
mov dword [ebp - 0x10], ebx
mov edi, dword [ebp - 0x18]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x2c]
jl 0x4255da
jmp 0x425ed0
mov edi, dword [ebp - 0x18]
or esi, 0xffffffff
jmp 0x425ead
shl ebx, 5
mov edi, ebx
jmp 0x4264f3
xor eax, eax
shl ebx, 5
mov dword [ebx + 0x4f7f40], eax
jmp 0x4264e8
cmp dword [ebp - 0x2c], eax
jle 0x4264de
push 4
pop esi
jmp 0x425ef1
mov dl, byte [ebp + 0xf]
cmp ebx, 0x18f
jge 0x4264de
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 4]
xor edi, edi
cmp dword [ebp + 0x14], edi
je 0x425f10
mov cx, word [eax + ecx*2]
jmp 0x425f15
movzx cx, byte [ecx + eax]
cmp cx, 0x41
jb 0x425f21
cmp cx, 0x5a
jbe 0x425f2f
cmp cx, 0xc0
jb 0x425f35
cmp cx, 0xdf
ja 0x425f35
movsx ax, dl
or ecx, eax
movzx eax, cx
cmp eax, 0x3f
jg 0x4260b0
je 0x42608f
cmp eax, 0x24
jl 0x4260cc
cmp eax, 0x25
jle 0x425fef
cmp eax, 0x27
jle 0x4260cc
cmp eax, 0x29
jle 0x425fa8
cmp eax, 0x2a
je 0x425f76
cmp eax, 0x2b
je 0x425fef
jmp 0x4260cc
cmp dword [ebp - 0x14], edi
jne 0x426094
cmp dword [ebp - 0xc], edi
push 1
pop ecx
mov dword [ebp - 8], ecx
je 0x4264cf
mov edx, dword [ebp - 0x18]
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f44], edx
mov word [eax + 0x4f7f52], cx
jmp 0x4264cf
cmp dword [ebp - 0x14], edi
je 0x4261a5
cmp cx, 0x28
mov dword [ebp - 0x14], edi
jne 0x425fc6
mov dword [ebp - 0xc], 1
jmp 0x4264cf
cmp dword [ebp - 0xc], edi
je 0x425fe4
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], esi
jne 0x425fe4
cmp dword [ebp - 8], edi
jne 0x425fe4
mov word [eax + 0x4f7f32], di
inc dword [ebp - 0x18]
mov dword [ebp - 0xc], edi
jmp 0x4264cf
cmp dword [ebp - 0x14], edi
jne 0x426094
cmp cx, 0x2b
jne 0x426033
cmp ebx, edi
je 0x426022
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], 6
jne 0x426022
dec ebx
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0xd
jmp 0x42607c
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 6
jmp 0x42607c
cmp dword [ebp - 8], edi
je 0x426050
mov eax, ebx
mov dword [ebp - 8], edi
shl eax, 5
inc ebx
mov dword [eax + 0x4f7f40], esi
mov word [eax + 0x4f7f50], 0xd
cmp cx, 0x25
jne 0x426067
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 7
jmp 0x42607c
cmp cx, 0x24
jne 0x42607c
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 8
cmp dword [ebp - 0xc], edi
je 0x4261de
mov eax, ebx
shl eax, 5
jmp 0x4261d5
cmp dword [ebp - 0x14], edi
je 0x42609c
mov dword [ebp - 0x14], edi
jmp 0x4261a5
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 3
jmp 0x4261d0
mov edx, eax
sub edx, 0x5b
je 0x4262a7
sub edx, 0x20
je 0x4261a0
dec edx
dec edx
je 0x4261a0
movsx edi, byte [0x4f7ac4]
xor edx, edx
cmp eax, edi
jne 0x426120
cmp dword [ebp - 0x14], edx
je 0x426114
cmp dword [ebp - 8], edx
mov dword [ebp - 0x14], edx
je 0x4260f6
mov eax, ebx
mov dword [ebp - 8], edx
shl eax, 5
mov dword [eax + 0x4f7f40], esi
jmp 0x426105
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], edx
mov word [eax + 0x4f7f50], cx
jmp 0x4261d3
mov dword [ebp - 0x14], 1
jmp 0x4264cf
xor edi, edi
cmp dword [ebp - 0x14], edi
je 0x426141
cmp cx, 0x74
mov dword [ebp - 0x14], edi
jne 0x426135
push 9
pop ecx
jmp 0x426141
cmp cx, 0x70
jne 0x426141
push 0xd
pop ecx
push 1
pop edx
cmp dword [ebp - 8], edi
je 0x426156
mov eax, ebx
mov dword [ebp - 8], edi
shl eax, 5
mov dword [eax + 0x4f7f40], esi
jmp 0x426165
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
cmp dword [ebp - 0xc], edi
mov word [eax + 0x4f7f50], cx
je 0x42617a
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0x4f7f44], ecx
inc ebx
cmp edx, edi
mov dword [ebp - 0x10], ebx
je 0x4264cf
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
mov word [eax + 0x4f7f50], 0xa
jmp 0x4261d0
cmp dword [ebp - 0x14], edi
jne 0x4261e7
cmp dword [ebp - 8], edi
je 0x4261ba
mov eax, ebx
mov dword [ebp - 8], edi
shl eax, 5
mov dword [eax + 0x4f7f40], esi
jmp 0x4261c9
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 2
mov word [eax + 0x4f7f50], cx
cmp dword [ebp - 0xc], edi
je 0x4261de
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0x4f7f44], ecx
inc ebx
mov dword [ebp - 0x10], ebx
jmp 0x4264cf
cmp cx, 0x7b
mov dword [ebp - 0x14], edi
jne 0x42622e
cmp dword [ebp - 0x34], 0xffffffff
jne 0x42620a
mov eax, ebx
mov dword [ebp - 0x34], ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 9
jmp 0x4261d0
mov ecx, dword [ebp - 0x34]
lea eax, [ebx + 1]
shl ecx, 5
mov dword [ebp - 0x30], ebx
mov word [ecx + 0x4f7f50], ax
mov eax, ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0xb
jmp 0x4261d0
cmp dword [ebp - 0xc], edi
je 0x42624c
mov eax, ebx
shl eax, 5
cmp dword [eax + 0x4f7f20], esi
jne 0x42624c
cmp dword [ebp - 8], edi
jne 0x42624c
mov word [eax + 0x4f7f32], di
or eax, 0xffffffff
cmp dword [ebp - 0x30], eax
jne 0x42626b
mov eax, ebx
mov dword [ebp - 0x28], ebx
shl eax, 5
mov dword [eax + 0x4f7f40], 0xa
jmp 0x4261d0
cmp dword [ebp - 0x28], eax
je 0x426289
mov edx, dword [ebp - 0x28]
lea ecx, [ebx + 1]
shl edx, 5
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x28], eax
mov word [edx + 0x4f7f50], cx
mov dword [ebp - 0x30], eax
mov eax, ebx
lea ecx, [ebx + 1]
shl eax, 5
mov word [eax + 0x4f7f50], cx
mov dword [eax + 0x4f7f40], 0xc
jmp 0x4261d0
cmp dword [ebp - 0x14], edi
jne 0x426094
mov esi, dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, 0x400
push edi
push 0x40
call esi
mov ebx, dword [ebp - 0x10]
push edi
shl ebx, 5
push 0x40
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x24], ebx
mov dword [ebx + 0x4f7f54], eax
call esi
xor esi, esi
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x3c], esi
mov dword [ebx + 0x4f7f58], eax
je 0x4264ed
cmp eax, esi
je 0x4264ed
mov edx, dword [ebp - 4]
mov eax, dword [ebp + 8]
inc edx
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x40], esi
lea ecx, [eax + edx*2]
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x1c], ecx
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 4], edx
mov dword [ebp - 0x20], ecx
jmp 0x42631e
mov edx, dword [ebp - 4]
mov eax, dword [ebp + 8]
cmp edx, dword [ebp - 0x2c]
jge 0x426491
cmp dword [ebp + 0x14], esi
je 0x426334
mov eax, dword [ebp - 0x1c]
mov cx, word [eax]
jmp 0x426339
movzx cx, byte [edx + eax]
cmp cx, 0x41
jb 0x426345
cmp cx, 0x5a
jbe 0x426353
cmp cx, 0xc0
jb 0x42635a
cmp cx, 0xdf
ja 0x42635a
movsx ax, byte [ebp + 0xf]
or ecx, eax
movzx eax, cx
cmp eax, 0x5d
je 0x426491
cmp eax, 0x7e
je 0x42647c
cmp dword [ebp - 0x40], esi
je 0x42637c
mov edi, dword [ebp - 0x48]
lea esi, [ebp - 0x4c]
jmp 0x426382
mov edi, dword [ebp - 0x3c]
lea esi, [ebp - 0x44]
movsx edx, byte [0x4f7ac4]
cmp eax, edx
jne 0x4263da
cmp dword [ebp + 0x14], 0
je 0x4263a6
inc dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
mov eax, dword [ebp - 0x1c]
mov cx, word [eax]
jmp 0x4263bc
inc dword [ebp - 4]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
movzx cx, byte [ecx + eax]
cmp cx, 0x74
jne 0x4263c6
push 9
jmp 0x4263d9
cmp cx, 0x70
jne 0x4263da
mov ecx, dword [esi]
push 0xa
mov word [edi + ecx*2], 0xd
inc ecx
mov dword [esi], ecx
pop ecx
mov edx, dword [esi]
mov word [edi + edx*2], cx
inc edx
cmp dword [ebp + 0x14], 0
mov dword [esi], edx
je 0x42640e
mov eax, dword [ebp - 0x20]
cmp word [eax], 0x2d
je 0x42641e
inc dword [ebp - 4]
add dword [ebp - 0x20], 2
add dword [ebp - 0x1c], 2
cmp edx, 0x1ff
jb 0x426498
jmp 0x426491
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 4]
cmp byte [ebx + eax + 1], 0x2d
mov ebx, dword [ebp - 0x24]
jne 0x4263f2
add dword [ebp - 4], 2
add dword [ebp - 0x20], 4
add dword [ebp - 0x1c], 4
cmp dword [ebp + 0x14], 0
movzx ecx, cl
je 0x42643b
mov eax, dword [ebp - 0x1c]
mov ax, word [eax]
jmp 0x426449
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + 8]
movzx ax, byte [eax + ebx]
mov ebx, dword [ebp - 0x24]
cmp ax, 0x41
jb 0x426455
cmp ax, 0x5a
jbe 0x426461
cmp ax, 0xc0
jb 0x42646b
cmp ax, 0xdf
ja 0x42646b
movsx bx, byte [ebp + 0xf]
or eax, ebx
mov ebx, dword [ebp - 0x24]
movzx eax, al
cmp ecx, eax
jge 0x4263f2
inc ecx
mov word [edi + edx*2], cx
inc edx
mov dword [esi], edx
jmp 0x42646e
add dword [ebp - 0x20], 2
inc edx
add dword [ebp - 0x1c], 2
mov dword [ebp - 0x40], 1
mov dword [ebp - 4], edx
jmp 0x426498
mov dword [ebp - 0x38], 1
xor esi, esi
cmp dword [ebp - 0x38], esi
je 0x426318
mov ax, word [ebp + 0x10]
cmp dword [ebp - 0xc], esi
mov word [ebx + 0x4f7f50], ax
je 0x4264bc
mov eax, dword [ebp - 0x18]
mov dword [ebx + 0x4f7f44], eax
inc dword [ebp - 0x10]
push 4
mov dword [ebx + 0x4f7f40], 5
mov ebx, dword [ebp - 0x10]
pop esi
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x2c]
jl 0x425eee
shl ebx, 5
and dword [ebx + 0x4f7f40], 0
pop edi
pop esi
pop ebx
leave
ret
mov edi, dword [ebp - 0x10]
shl edi, 5
push dword [edi + 0x4f7f54]
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
call esi
push dword [edi + 0x4f7f58]
call esi
and dword [0x4f7f40], 0
jmp 0x4264e8