Function at 0x408110
Capabilities:
Encode data using xor
Extract resource via kernel32 functions

Disassembly:
push ebp
mov edx, 0x412248
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x83c
lea ebx, [ebp - 0x6a8]
mov dword [esp + 4], edx
mov esi, dword [ebp + 8]
mov dword [esp], ebx
mov dword [ebp - 0x818], esi
xor esi, esi
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
mov dword [esp], ebx
lea ebx, [ebp - 0x6f8]
call sub.KERNEL32.dll_lstrlenA
mov dword [ebp - 0x824], eax
sub esp, 4
mov ecx, 0x411035
mov dword [esp + 4], ecx
mov eax, 0x46
mov dword [esp + 8], eax
mov dword [esp], ebx
call sub.msvcrt.dll_memcpy
mov dword [esp + 4], edi
lea edx, [ebp - 0x80c]
lea eax, [ebp - 0x810]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.00409f00
mov dword [esp], ebx
lea ecx, [ebp - 0x80c]
mov eax, 0x46
mov dword [esp + 0xc], ecx
lea edx, [ebp - 0x810]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.00409f00
test eax, eax
je 0x40821f
mov ecx, 1
movzx edx, byte [esi + ebp - 0x6a8]
lea edi, [esi + 1]
xor byte [ecx + ebp - 0x6f8], dl
cmp edi, dword [ebp - 0x824]
setne al
movzx esi, al
neg esi
inc ecx
and esi, edi
cmp ecx, 0x46
jl 0x4081c0
mov edx, dword [ebp - 0x810]
lea eax, [ebp - 0x80c]
mov ecx, 0x46
lea edi, [ebp - 0x810]
mov byte [edx + 0x46], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.00409f00
test eax, eax
jne 0x4084d5
mov edx, 2
mov edi, dword [ebp - 0x818]
lea ebx, [ebp - 0x814]
mov dword [ebp - 0x814], edx
mov edx, dword [ebp - 0x810]
lea ecx, [ebp - 0x808]
add edi, 0x6ae8
cmp byte [edx + 2], 0x7c
je 0x408272
mov eax, 2
lea esi, [esi]
lea edi, [edi]
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408260
mov byte [ecx], 0
lea edx, [ebp - 0x808]
mov dword [esp + 4], edx
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcpyA
mov edi, dword [ebx]
sub esp, 8
mov ecx, dword [ebp - 0x818]
mov edx, dword [ebp - 0x810]
inc edi
add ecx, 0x6b01
mov dword [ebx], edi
mov eax, dword [ebp - 0x814]
mov dword [ebp - 0x828], ecx
lea ecx, [ebp - 0x808]
cmp byte [edx + eax], 0x7c
je 0x4082d2
mov eax, edi
nop
lea esi, [esi]
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x4082c0
mov byte [ecx], 0
lea ecx, [ebp - 0x808]
mov edi, 0x68
mov dword [esp + 4], ecx
mov eax, dword [ebp - 0x828]
mov dword [esp], eax
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebx]
sub esp, 8
mov edx, 0x41225e
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], 0
call sub.KERNEL32.dll_FindResourceA
mov dword [ebp - 0x81c], eax
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], 0
call sub.KERNEL32.dll_LoadResource
mov ecx, dword [ebp - 0x81c]
sub esp, 8
mov edi, eax
mov dword [esp], 0
mov dword [esp + 4], ecx
call sub.KERNEL32.dll_SizeofResource
mov dword [ebp - 0x834], eax
sub esp, 8
test eax, eax
jne 0x408512
mov dword [esp], 0
xor esi, esi
mov ebx, str.Quizz
mov dword [esp + 0xc], esi
mov eax, 0x412248
mov edi, str.Createur_quizz
mov dword [esp + 8], ebx
mov ebx, str.Explications_du_quizz
mov dword [esp + 4], eax
call sub.USER32.dll_MessageBoxA
mov edx, dword [ebp - 0x818]
mov ecx, str.Nom_du_quizz
sub esp, 0x10
mov dword [esp + 4], ecx
add edx, 0xc
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebp - 0x818]
sub esp, 8
mov dword [esp + 4], edi
mov edi, str.TEST
add esi, 0x110
mov dword [esp], esi
call sub.KERNEL32.dll_lstrcpyA
mov eax, dword [ebp - 0x818]
sub esp, 8
mov dword [esp + 4], ebx
mov ebx, 7
add eax, 0x214
mov dword [esp], eax
call sub.KERNEL32.dll_lstrcpyA
mov edx, dword [ebp - 0x818]
mov ecx, str.TEST
sub esp, 8
mov dword [esp + 4], ecx
add edx, 0x318
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebp - 0x818]
sub esp, 8
mov dword [esp + 4], edi
add esi, 0x41c
mov dword [esp], esi
mov esi, str.emplacement
call sub.KERNEL32.dll_lstrcpyA
mov edi, dword [ebp - 0x818]
mov edx, 0xff6633
mov ecx, 3
sub esp, 8
mov eax, 1
mov dword [edi + 0x68c8], edx
mov dword [edi + 0x520], ebx
mov ebx, str.TEST
mov dword [edi + 0x66a8], ecx
mov dword [edi + 8], 1
mov dword [edi + 0x524], eax
mov byte [edi + 0x68c4], 0x33
mov byte [edi + 0x68c6], 0x66
mov byte [edi + 0x68c5], 0xff
mov edi, str.TEST
mov dword [esp], 0xff6633
call sub.GDI32.dll_CreateSolidBrush
mov ecx, dword [ebp - 0x818]
sub esp, 4
mov dword [ecx + 0x68cc], eax
mov eax, str.TEST
mov dword [esp + 0xc], esi
mov esi, str.TEST
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00408010
mov dword [esp + 8], edi
mov ebx, dword [ebp - 0x818]
mov edx, str.emplacement
mov dword [esp + 0xc], edx
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.00408010
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0
xor eax, eax
mov edi, str.Quizz
mov dword [esp + 8], edi
mov ecx, 0x4122a7
xor esi, esi
mov dword [esp + 0xc], eax
mov dword [esp + 4], ecx
call sub.USER32.dll_MessageBoxA
mov ebx, dword [ebp - 0x818]
sub esp, 0x10
mov dword [ebx + 0x520], esi
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], edi
call sub.KERNEL32.dll_LockResource
mov dword [ebp - 0x820], eax
sub esp, 4
lea eax, [ebp - 0x80c]
mov dword [esp + 0xc], eax
lea ecx, [ebp - 0x810]
mov dword [esp + 8], ecx
mov edx, dword [ebp - 0x834]
mov dword [esp + 4], edx
mov edi, dword [ebp - 0x820]
mov dword [esp], edi
call fcn.00409f00
test eax, eax
mov edi, eax
je 0x4085c1
mov ecx, 1
jmp 0x408581
movzx eax, byte [esi + ebp - 0x6a8]
mov edi, dword [ebp - 0x820]
xor byte [ecx + edi], al
lea edi, [esi + 1]
cmp edi, dword [ebp - 0x824]
setne dl
movzx esi, dl
neg esi
inc ecx
and esi, edi
cmp ecx, dword [ebp - 0x834]
jl 0x40855c
mov eax, dword [ebp - 0x810]
lea edi, [ebp - 0x80c]
mov ecx, dword [ebp - 0x834]
lea edx, [ebp - 0x810]
mov byte [ecx + eax], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov esi, dword [ebp - 0x820]
mov dword [esp], esi
call fcn.00409f00
mov edi, eax
mov esi, dword [ebp - 0x81c]
mov dword [esp], esi
call sub.KERNEL32.dll_FreeResource
sub esp, 4
test edi, edi
jne 0x408cb6
mov edx, dword [ebp - 0x810]
mov ecx, dword [ebp - 0x818]
movzx esi, byte [edx + 1]
dec esi
mov dword [ecx + 8], esi
mov esi, 4
movzx eax, byte [edx + 2]
mov dword [ecx + 0x520], eax
movzx edi, byte [edx + 3]
mov dword [ecx + 0x524], edi
mov dword [ebp - 0x814], esi
mov esi, ecx
add esi, 0xc
cmp byte [edx + 4], 0x7c
lea ecx, [ebp - 0x808]
je 0x408632
mov eax, dword [ebx]
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408620
mov byte [ecx], 0
lea edx, [ebp - 0x808]
mov dword [esp + 4], edx
mov dword [esp], esi
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebx]
sub esp, 8
lea ecx, [ebp - 0x808]
mov edx, dword [ebp - 0x810]
mov edi, dword [ebp - 0x818]
inc esi
mov dword [ebx], esi
mov eax, dword [ebp - 0x814]
add edi, 0x110
cmp byte [edx + eax], 0x7c
je 0x408687
mov eax, esi
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408675
mov byte [ecx], 0
lea ecx, [ebp - 0x808]
mov dword [esp + 4], ecx
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebx]
sub esp, 8
lea ecx, [ebp - 0x808]
mov edx, dword [ebp - 0x810]
mov edi, dword [ebp - 0x818]
inc esi
mov dword [ebx], esi
mov eax, dword [ebp - 0x814]
add edi, 0x214
cmp byte [edx + eax], 0x7c
je 0x4086dc
mov eax, esi
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x4086ca
mov byte [ecx], 0
lea esi, [ebp - 0x808]
mov dword [esp + 4], esi
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebx]
sub esp, 8
lea ecx, [ebp - 0x808]
mov edx, dword [ebp - 0x810]
mov edi, dword [ebp - 0x818]
inc esi
mov dword [ebx], esi
mov eax, dword [ebp - 0x814]
add edi, 0x318
cmp byte [edx + eax], 0x7c
je 0x408731
mov eax, esi
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x40871f
mov byte [ecx], 0
lea edx, [ebp - 0x808]
mov dword [esp + 4], edx
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebx]
sub esp, 8
lea ecx, [ebp - 0x808]
mov edx, dword [ebp - 0x810]
mov edi, dword [ebp - 0x818]
inc esi
mov dword [ebx], esi
mov eax, dword [ebp - 0x814]
add edi, 0x41c
cmp byte [edx + eax], 0x7c
je 0x408786
mov eax, esi
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408774
mov byte [ecx], 0
lea esi, [ebp - 0x808]
mov dword [esp], edi
xor edi, edi
mov dword [esp + 4], esi
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebx]
sub esp, 8
mov ecx, dword [ebp - 0x818]
mov edx, dword [ecx + 0x520]
cmp edx, 0
jle 0x4088c3
mov edx, dword [ebp - 0x810]
lea ecx, [ebp - 0x808]
mov eax, dword [ebp - 0x814]
cmp byte [edx + eax], 0x7c
je 0x4087f2
mov eax, dword [ebx]
jmp 0x4087e0
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x4087e0
mov byte [ecx], 0
lea esi, [ebp - 0x808]
lea ecx, [ebp - 0x238]
mov dword [esp + 4], esi
mov dword [esp], ecx
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebx]
sub esp, 8
mov edx, dword [ebp - 0x818]
inc esi
mov dword [ebx], esi
cmp dword [edx + 0x524], 2
je 0x4089d8
mov byte [ebp - 0x348], 0
mov edx, dword [ebp - 0x810]
lea ecx, [ebp - 0x808]
mov esi, dword [ebp - 0x814]
cmp byte [edx + esi], 0x7c
je 0x408862
mov eax, dword [ebx]
lea esi, [esi]
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408850
mov byte [ecx], 0
lea edx, [ebp - 0x458]
inc edi
mov dword [esp], edx
lea esi, [ebp - 0x808]
mov dword [esp + 4], esi
lea esi, [ebp - 0x238]
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebx]
sub esp, 8
mov edx, dword [ebp - 0x818]
mov dword [esp + 4], esi
lea ecx, [ebp - 0x458]
lea eax, [ebp - 0x348]
mov dword [esp + 0xc], ecx
mov dword [esp], edx
mov dword [esp + 8], eax
call fcn.00408010
mov ecx, dword [ebp - 0x818]
mov edx, dword [ecx + 0x520]
cmp edx, edi
jg 0x4087b7
mov esi, dword [ebp - 0x814]
mov edi, dword [ebp - 0x810]
mov ecx, dword [ebp - 0x818]
movzx eax, byte [esi + edi]
mov dword [ecx + 0x66a8], eax
mov eax, dword [ecx + 0x66a8]
inc dword [ebp - 0x814]
cmp eax, 6
ja 0x408a3d
mov esi, 1
mov cl, al
shl esi, cl
test esi, 0x48
jne 0x408d1f
and esi, 0x16
je 0x408a3d
xor eax, eax
cmp edx, 0
mov dword [ebp - 0x82c], eax
jle 0x408a3d
mov esi, dword [ebp - 0x814]
lea edx, [ebp - 0x808]
cmp byte [edi + esi], 0x7c
je 0x408949
mov eax, dword [ebx]
movzx ecx, byte [edi + eax]
mov byte [edx], cl
mov eax, dword [ebx]
inc edx
inc eax
mov dword [ebx], eax
cmp byte [edi + eax], 0x7c
jne 0x408937
mov byte [edx], 0
lea eax, [ebp - 0x808]
xor esi, esi
mov dword [esp + 4], eax
lea edx, [ebp - 0x238]
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebx]
sub esp, 8
mov edi, dword [ebp - 0x818]
mov ecx, dword [edi + 0x6b2c]
xor edi, edi
test ecx, ecx
jmp 0x408996
mov edi, ecx
mov ecx, dword [ecx + 0x418]
inc esi
test ecx, ecx
setne dl
cmp esi, dword [ebp - 0x82c]
setbe al
test al, dl
jne 0x40897d
lea edx, [ebp - 0x238]
lea eax, [edi + 0x30c]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebp - 0x82c]
sub esp, 8
mov esi, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x82c]
cmp dword [esi + 0x520], ecx
jle 0x408a37
mov edi, dword [ebp - 0x810]
jmp 0x408923
mov edx, dword [ebp - 0x810]
lea ecx, [ebp - 0x808]
mov eax, dword [ebp - 0x814]
cmp byte [edx + eax], 0x7c
je 0x408a12
mov eax, esi
lea esi, [esi]
lea edi, [edi]
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408a00
mov byte [ecx], 0
lea edx, [ebp - 0x348]
lea ecx, [ebp - 0x808]
mov dword [esp + 4], ecx
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebx]
sub esp, 8
jmp 0x40882f
mov edi, dword [ebp - 0x810]
mov eax, dword [ebp - 0x814]
mov edx, dword [ebp - 0x818]
movzx ecx, byte [eax + edi]
mov byte [edx + 0x68c4], cl
mov edi, dword [ebp - 0x814]
mov esi, dword [ebp - 0x810]
lea ebx, [edi + 1]
mov dword [ebp - 0x814], ebx
movzx eax, byte [esi + edi + 1]
mov esi, dword [ebp - 0x818]
mov byte [esi + 0x68c6], al
mov edx, dword [ebp - 0x814]
mov ebx, dword [ebp - 0x810]
movzx edi, byte [esi + 0x68c6]
lea ecx, [edx + 1]
mov dword [ebp - 0x814], ecx
movzx eax, byte [ebx + edx + 1]
shl edi, 8
movzx edx, byte [esi + 0x68c4]
mov byte [esi + 0x68c5], al
movzx ecx, byte [esi + 0x68c5]
or edx, edi
mov edi, 0x69
inc dword [ebp - 0x814]
shl ecx, 0x10
or edx, ecx
mov dword [esi + 0x68c8], edx
mov dword [esp], edx
call sub.GDI32.dll_CreateSolidBrush
mov ebx, dword [ebp - 0x818]
sub esp, 4
mov dword [ebx + 0x68cc], eax
mov eax, 0x41225e
mov dword [esp + 4], edi
lea ebx, [ebp - 0x810]
mov dword [esp + 8], eax
mov dword [esp], 0
call sub.KERNEL32.dll_FindResourceA
mov dword [ebp - 0x838], eax
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], 0
call sub.KERNEL32.dll_LoadResource
mov ecx, dword [ebp - 0x838]
sub esp, 8
mov esi, eax
mov dword [esp], 0
mov dword [esp + 4], ecx
call sub.KERNEL32.dll_SizeofResource
sub esp, 8
mov edi, eax
mov dword [esp], esi
call sub.KERNEL32.dll_LockResource
sub esp, 4
lea edx, [ebp - 0x80c]
mov esi, eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.00409f00
test eax, eax
mov ebx, eax
je 0x408bbc
xor ecx, ecx
mov ebx, 1
jmp 0x408b8c
movzx eax, byte [ecx + ebp - 0x6a8]
lea edx, [ecx + 1]
xor ecx, ecx
xor byte [ebx + esi], al
cmp edx, dword [ebp - 0x824]
setne cl
neg ecx
and ecx, edx
inc ebx
cmp ebx, edi
jl 0x408b6e
mov edx, dword [ebp - 0x810]
lea ecx, [ebp - 0x80c]
lea ebx, [ebp - 0x810]
mov byte [edi + edx], 0
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.00409f00
mov ebx, eax
mov esi, dword [ebp - 0x838]
mov dword [esp], esi
call sub.KERNEL32.dll_FreeResource
sub esp, 4
test ebx, ebx
jne 0x408cf3
mov esi, dword [ebp - 0x818]
xor edx, edx
xor edi, edi
mov dword [ebp - 0x814], edx
mov ecx, dword [esi + 0x520]
test ecx, ecx
jle 0x408ca0
add esi, 0x528
mov ebx, 0x4121e5
lea eax, [ebp - 0x568]
mov dword [esp + 4], ebx
xor ebx, ebx
mov dword [esp], eax
call sub.KERNEL32.dll_lstrcpyA
mov edx, dword [ebp - 0x814]
sub esp, 8
cmp edx, dword [ebp - 0x80c]
jg 0x408c62
mov eax, dword [ebp - 0x810]
cmp byte [edx + eax], 0xd
jmp 0x408c60
movzx ecx, byte [edx + eax]
mov byte [ebx + ebp - 0x568], cl
mov ecx, dword [ebp - 0x814]
inc ebx
lea eax, [ecx + 1]
mov edx, eax
cmp eax, dword [ebp - 0x80c]
mov dword [ebp - 0x814], eax
jg 0x408c62
mov eax, dword [ebp - 0x810]
cmp byte [eax + ecx + 1], 0xd
jne 0x408c30
xor eax, eax
inc edi
mov byte [ebx + ebp - 0x568], al
lea ebx, [ebp - 0x568]
mov dword [esp], esi
add esi, 0x104
mov dword [esp + 4], ebx
call sub.KERNEL32.dll_lstrcpyA
add dword [ebp - 0x814], 2
sub esp, 8
mov edx, dword [ebp - 0x818]
cmp dword [edx + 0x520], edi
jg 0x408bf9
mov esi, dword [ebp - 0x818]
xor edi, edi
mov dword [esi + 0x66ac], edi
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0
xor eax, eax
mov edi, str.Quizz
mov dword [esp + 8], edi
mov edx, 0x4122c4
mov dword [esp + 0xc], eax
mov dword [esp + 4], edx
call sub.USER32.dll_MessageBoxA
mov ebx, dword [ebp - 0x818]
xor ecx, ecx
sub esp, 0x10
mov dword [ebx + 0x520], ecx
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0
mov eax, str.Quizz
xor ebx, ebx
mov dword [esp + 0xc], ebx
mov edi, str.Erreur_dans_le_d
mov dword [esp + 8], eax
mov dword [esp + 4], edi
call sub.USER32.dll_MessageBoxA
sub esp, 0x10
jmp 0x4084cd
xor ecx, ecx
cmp edx, 0
mov dword [ebp - 0x830], ecx
jle 0x408a3d
mov esi, dword [ebp - 0x814]
lea edx, [ebp - 0x808]
cmp byte [edi + esi], 0x7c
je 0x408d62
mov eax, dword [ebx]
lea esi, [esi]
lea edi, [edi]
movzx eax, byte [edi + eax]
mov byte [edx], al
mov eax, dword [ebx]
inc edx
inc eax
mov dword [ebx], eax
cmp byte [edi + eax], 0x7c
jne 0x408d50
mov byte [edx], 0
lea ecx, [ebp - 0x808]
lea edx, [ebp - 0x238]
mov dword [esp + 4], ecx
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcpyA
mov esi, dword [ebx]
sub esp, 8
lea ecx, [ebp - 0x808]
mov edx, dword [ebp - 0x810]
inc esi
mov dword [ebx], esi
mov edi, dword [ebp - 0x814]
cmp byte [edx + edi], 0x7c
je 0x408db2
mov eax, esi
nop
movzx eax, byte [edx + eax]
mov byte [ecx], al
mov eax, dword [ebx]
inc ecx
inc eax
mov dword [ebx], eax
cmp byte [edx + eax], 0x7c
jne 0x408da0
mov byte [ecx], 0
lea edx, [ebp - 0x808]
lea esi, [ebp - 0x348]
mov dword [esp], esi
xor esi, esi
mov dword [esp + 4], edx
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebx]
sub esp, 8
mov edi, dword [ebp - 0x818]
mov ecx, dword [edi + 0x6b2c]
xor edi, edi
test ecx, ecx
jmp 0x408dff
mov edi, ecx
mov ecx, dword [ecx + 0x418]
inc esi
test ecx, ecx
setne dl
cmp esi, dword [ebp - 0x830]
setbe al
test al, dl
jne 0x408de6
lea eax, [ebp - 0x238]
lea esi, [edi + 0x30c]
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.KERNEL32.dll_lstrcpyA
inc dword [ebp - 0x830]
sub esp, 8
mov edi, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x830]
cmp dword [edi + 0x520], ecx
jle 0x408a37
mov edi, dword [ebp - 0x810]
jmp 0x408d30