Function at 0x40a13e
Capabilities:
Encode data using xor

Disassembly:
push 0x54c
mov eax, 0x432467
call fcn.0041bc0a
mov eax, ecx
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x544], eax
xor ebx, ebx
mov dword [ebp - 4], ebx
push ecx
mov dword [ebp - 0x558], eax
push ecx
mov dword [ebp - 0x554], ebx
call fcn.0041a79f
cmp dword [0x444f4c], 0xf
lea edi, [ebp - 0x20]
mov esi, 0x43cf40
mov dword [ebp - 0x548], 0x444f38
pop ecx
pop ecx
mov ecx, eax
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x54c], ecx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov edi, dword [0x444f48]
jbe 0x40a1ae
mov eax, dword [0x444f38]
mov dword [ebp - 0x548], eax
mov esi, ebx
mov dword [ebp - 0x544], 0x34
xor edx, edx
mov eax, esi
div dword [ebp - 0x544]
add dl, 0x38
xor byte [ebp + esi - 0x20], dl
inc esi
cmp esi, 0xb
jl 0x40a1ba
push ecx
push edi
push dword [ebp - 0x548]
lea edx, [ebp - 0x20]
call fcn.0041a877
mov esi, str.K_IOYP
lea edi, [ebp - 0x20]
add esp, 0xc
mov ecx, ebx
cmp dword [0x44395c], 0xf
movsd dword es:[edi], dword [esi]
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov esi, 0x443948
cmova esi, dword [0x443948]
pop edi
xor edx, edx
mov eax, ecx
div edi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xb
jl 0x40a209
push ecx
push dword [0x443958]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x20]
push esi
call fcn.0041a877
add esp, 0xc
lea eax, [ebp - 0x68]
mov ecx, 0x444f50
push eax
call fcn.0040dc33
mov dword [ebp - 4], 1
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40a2f0
add eax, 0x18
mov dword [ebp - 0x548], eax
mov esi, str.KM_ZQa_
lea edi, [ebp - 0x1c]
push 0x34
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40a278
mov esi, dword [ebp - 0x548]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x5c]
lea eax, [esi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 2
cmp dword [eax + 0x14], 0xf
jbe 0x40a2ad
mov eax, dword [eax]
cmp dword [esi + 0x14], 0xf
mov ecx, esi
jbe 0x40a2b7
mov ecx, dword [esi]
push ecx
push dword [esi + 0x10]
mov edx, eax
push ecx
mov ecx, dword [ebp - 0x54c]
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00402636
add esi, 0x30
mov dword [ebp - 0x548], esi
lea eax, [esi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a267
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], bl
call fcn.0040668e
cmp dword [0x443944], 0xf
lea edi, [ebp - 0x44]
mov esi, 0x43cce0
mov dword [ebp - 0x548], 0x443930
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jbe 0x40a328
mov eax, dword [0x443930]
mov dword [ebp - 0x548], eax
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x44], dl
inc ecx
cmp ecx, 0x13
jl 0x40a32d
mov esi, dword [ebp - 0x54c]
lea edx, [ebp - 0x44]
push ecx
push dword [0x443940]
mov ecx, esi
push dword [ebp - 0x548]
call fcn.0041a877
add esp, 0xc
lea eax, [ebp - 0x20]
mov ecx, 0x444fc8
push eax
call fcn.0040dc33
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x544], eax
cmp edi, eax
je 0x40a3ba
add edi, 0x18
cmp dword [edi + 0x14], 0xf
mov eax, edi
jbe 0x40a392
mov eax, dword [edi]
cmp dword [edi - 4], 0xf
lea edx, [edi - 0x18]
jbe 0x40a39d
mov edx, dword [edx]
push ecx
push dword [edi + 0x10]
mov ecx, esi
push eax
call fcn.0041a877
add edi, 0x30
add esp, 0xc
lea eax, [edi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a388
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x444fb0
push eax
call fcn.0040dc33
mov dword [ebp - 4], 4
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40a486
add eax, 0x18
mov dword [ebp - 0x548], eax
inc dword [0x444824]
lea edi, [ebp - 0x1c]
mov esi, str.L__O_a_
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40a40e
mov esi, dword [ebp - 0x548]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x5c]
lea eax, [esi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 5
mov ecx, esi
cmp dword [esi + 0x14], 0xf
jbe 0x40a445
mov ecx, dword [esi]
cmp dword [eax + 0x14], 0xf
jbe 0x40a44d
mov eax, dword [eax]
push ecx
push dword [esi + 0x10]
mov edx, eax
push ecx
mov ecx, dword [ebp - 0x54c]
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x5c]
call fcn.00402636
add esi, 0x30
mov dword [ebp - 0x548], esi
lea eax, [esi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a3f7
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x444d58
push eax
call fcn.0040dc33
mov dword [ebp - 4], 6
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40a54c
add eax, 0x18
mov dword [ebp - 0x548], eax
mov esi, str.PVOa_
lea edi, [ebp - 0x1c]
push 0x34
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40a4d4
mov esi, dword [ebp - 0x548]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x5c]
lea eax, [esi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 7
mov ecx, esi
cmp dword [esi + 0x14], 0xf
jbe 0x40a50b
mov ecx, dword [esi]
cmp dword [eax + 0x14], 0xf
jbe 0x40a513
mov eax, dword [eax]
push ecx
push dword [esi + 0x10]
mov edx, eax
push ecx
mov ecx, dword [ebp - 0x54c]
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x5c]
call fcn.00402636
add esi, 0x30
mov dword [ebp - 0x548], esi
lea eax, [esi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a4c3
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x4448bc
push eax
call fcn.0040dc33
mov dword [ebp - 4], 8
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40a611
add eax, 0x18
mov dword [ebp - 0x548], eax
mov esi, str._VUPUXMc_
lea edi, [ebp - 0x20]
push 0x34
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40a599
mov esi, dword [ebp - 0x548]
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x5c]
lea eax, [esi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 9
mov ecx, esi
cmp dword [esi + 0x14], 0xf
jbe 0x40a5d0
mov ecx, dword [esi]
cmp dword [eax + 0x14], 0xf
jbe 0x40a5d8
mov eax, dword [eax]
push ecx
push dword [esi + 0x10]
mov edx, eax
push ecx
mov ecx, dword [ebp - 0x54c]
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x5c]
call fcn.00402636
add esi, 0x30
mov dword [ebp - 0x548], esi
lea eax, [esi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a589
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
cmp dword [0x444f94], 0xf
lea edi, [ebp - 0x3c]
mov esi, str.HKUXYNM
mov eax, 0x444f80
cmova eax, dword [0x444f80]
cmp byte [0x43cf8b], 0
mov dword [ebp - 0x544], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
je 0x40a667
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x3c], dl
inc ecx
cmp ecx, 0xc
jl 0x40a64e
mov eax, dword [ebp - 0x544]
push ecx
push dword [0x444f90]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x3c]
push eax
call fcn.0041a877
mov esi, str.QWIO_QR
lea edi, [ebp - 0x3c]
add esp, 0xc
mov eax, 0x444f98
cmp dword [0x444fac], 0xf
cmova eax, dword [0x444f98]
cmp byte [0x43ce9f], 0
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x544], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
je 0x40a6cb
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x3c], dl
inc ecx
cmp ecx, 0xc
jl 0x40a6b2
mov eax, dword [ebp - 0x544]
push ecx
push dword [0x444fa8]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x3c]
push eax
call fcn.0041a877
mov esi, 0x43cba4
lea edi, [ebp - 0x44]
add esp, 0xc
mov eax, 0x443918
cmp dword [0x44392c], 0xf
cmova eax, dword [0x443918]
cmp byte [0x43cbb5], 0
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x544], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
je 0x40a732
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x44], dl
inc ecx
cmp ecx, 0x12
jl 0x40a719
mov eax, dword [ebp - 0x544]
push ecx
push dword [0x443928]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x44]
push eax
call fcn.0041a877
mov esi, str.VWZUS
mov dword [ebp - 0x548], 0x443900
lea edi, [ebp - 0x20]
add esp, 0xc
cmp dword [0x443914], 0xf
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jbe 0x40a776
mov eax, dword [0x443900]
mov dword [ebp - 0x548], eax
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xb
jl 0x40a77b
push ecx
push dword [0x443910]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x20]
push dword [ebp - 0x548]
call fcn.0041a877
mov esi, str.PVFTRS_o6_0E
lea edi, [ebp - 0x40]
add esp, 0xc
mov eax, 0x444d88
cmp dword [0x444d9c], 0xf
cmova eax, dword [0x444d88]
cmp byte [0x43cfa9], 0
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x544], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
je 0x40a7f9
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x40], dl
inc ecx
cmp ecx, 0xe
jl 0x40a7e0
mov eax, dword [ebp - 0x544]
push ecx
push dword [0x444d98]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x40]
push eax
call fcn.0041a877
mov esi, str.YLNTZTRS3o6_0E
lea edi, [ebp - 0x40]
add esp, 0xc
mov eax, 0x444874
cmp dword [0x444888], 0xf
cmova eax, dword [0x444874]
cmp byte [0x43cde9], 0
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x544], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
je 0x40a85f
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x40], dl
inc ecx
cmp ecx, 0xe
jl 0x40a846
mov eax, dword [ebp - 0x544]
push ecx
push dword [0x444884]
mov ecx, dword [ebp - 0x54c]
lea edx, [ebp - 0x40]
push eax
call fcn.0041a877
add esp, 0xc
mov dword [ebp - 0x548], 0x44488c
cmp dword [0x4448a0], 0xf
lea edi, [ebp - 0x44]
mov esi, str.HXIHKRL_3
push 5
pop ecx
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jbe 0x40a8a4
mov eax, dword [0x44488c]
mov dword [ebp - 0x548], eax
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x44], dl
inc ecx
cmp ecx, 0x15
jl 0x40a8a9
mov esi, dword [ebp - 0x54c]
lea edx, [ebp - 0x44]
push ecx
push dword [0x44489c]
mov ecx, esi
push dword [ebp - 0x548]
call fcn.0041a877
add esp, 0xc
lea eax, [ebp - 0x3c]
mov ecx, 0x444d10
push eax
call fcn.0040dc33
mov dword [ebp - 4], 0xa
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40a999
add eax, 0x18
mov dword [ebp - 0x548], eax
mov esi, 0x43cdb4
lea edi, [ebp - 0x1c]
push 0x34
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40a91f
mov edi, dword [ebp - 0x548]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x5c]
lea eax, [edi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 0xb
cmp dword [eax + 0x14], 0xf
jbe 0x40a954
mov eax, dword [eax]
cmp dword [edi + 0x14], 0xf
mov ecx, edi
jbe 0x40a95e
mov ecx, dword [edi]
mov esi, dword [ebp - 0x54c]
mov edx, eax
push ecx
push dword [edi + 0x10]
push ecx
mov ecx, esi
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5c]
call fcn.00402636
add edi, 0x30
mov dword [ebp - 0x548], edi
lea eax, [edi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a90e
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x444f68
push eax
call fcn.0040dc33
mov dword [ebp - 4], 0xc
mov eax, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
mov dword [ebp - 0x544], eax
cmp edi, eax
je 0x40a9fe
add edi, 0x18
cmp dword [edi + 0x14], 0xf
mov eax, edi
jbe 0x40a9d6
mov eax, dword [edi]
cmp dword [edi - 4], 0xf
lea edx, [edi - 0x18]
jbe 0x40a9e1
mov edx, dword [edx]
push ecx
push dword [edi + 0x10]
mov ecx, esi
push eax
call fcn.0041a877
add edi, 0x30
add esp, 0xc
lea eax, [edi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40a9cc
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x444d28
push eax
call fcn.0040dc33
mov dword [ebp - 4], 0xd
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40aac5
add eax, 0x18
mov dword [ebp - 0x548], eax
mov esi, str._VUPUXMc_
lea edi, [ebp - 0x20]
push 0x34
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40aa4b
mov edi, dword [ebp - 0x548]
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x5c]
lea eax, [edi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 0xe
mov ecx, edi
cmp dword [edi + 0x14], 0xf
jbe 0x40aa82
mov ecx, dword [edi]
cmp dword [eax + 0x14], 0xf
jbe 0x40aa8a
mov eax, dword [eax]
mov esi, dword [ebp - 0x54c]
mov edx, eax
push ecx
push dword [edi + 0x10]
push ecx
mov ecx, esi
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x5c]
call fcn.00402636
add edi, 0x30
mov dword [ebp - 0x548], edi
lea eax, [edi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40aa3b
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x444ef0
push eax
call fcn.0040dc33
mov dword [ebp - 4], 0xf
mov eax, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
mov dword [ebp - 0x544], eax
cmp edi, eax
je 0x40ab30
add edi, 0x14
inc dword [0x444818]
lea edx, [edi - 0x14]
cmp dword [edi], 0xf
jbe 0x40ab08
mov edx, dword [edx]
cmp dword [edi + 0x18], 0xf
lea eax, [edi + 4]
jbe 0x40ab13
mov eax, dword [eax]
push ecx
push dword [edi + 0x14]
mov ecx, esi
push eax
call fcn.0041a877
add edi, 0x30
add esp, 0xc
lea eax, [edi - 0x14]
cmp eax, dword [ebp - 0x544]
jne 0x40aaf8
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
lea eax, [ebp - 0x3c]
mov ecx, 0x444f08
push eax
call fcn.0040dc33
mov dword [ebp - 4], 0x10
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x544], ecx
cmp eax, ecx
je 0x40abfe
add eax, 0x18
mov dword [ebp - 0x548], eax
push 5
pop ecx
mov esi, 0x43ce34
inc dword [0x444818]
lea edi, [ebp - 0x2c]
rep movsd dword es:[edi], dword [esi]
push 0x34
mov ecx, ebx
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x2c], dl
inc ecx
cmp ecx, 0x15
jl 0x40ab86
mov esi, dword [ebp - 0x548]
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0x5c]
lea eax, [esi - 0x18]
push eax
call fcn.00404e71
pop ecx
mov byte [ebp - 4], 0x11
mov ecx, esi
cmp dword [esi + 0x14], 0xf
jbe 0x40abbd
mov ecx, dword [esi]
cmp dword [eax + 0x14], 0xf
jbe 0x40abc5
mov eax, dword [eax]
push ecx
push dword [esi + 0x10]
mov edx, eax
push ecx
mov ecx, dword [ebp - 0x54c]
call fcn.0041a877
add esp, 0xc
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x5c]
call fcn.00402636
add esi, 0x30
mov dword [ebp - 0x548], esi
lea eax, [esi - 0x18]
cmp eax, dword [ebp - 0x544]
jne 0x40ab6d
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.0040668e
mov esi, str.uNZqMT_
lea edi, [ebp - 0x20]
push 0x34
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40ac19
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x5c]
call fcn.004040bd
mov esi, str.AU_IN_
mov dword [ebp - 4], 0x12
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40ac50
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xec]
call fcn.004040bd
mov byte [ebp - 4], 0x13
cmp byte [0x43cbcf], 0
mov eax, dword [str.zPTZR__kQ_WP]
mov ecx, dword [0x43cbcc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40aca5
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40ac92
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xd4]
call fcn.004040bd
mov esi, str.lKUUpTPT_
mov byte [ebp - 4], 0x14
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40acc8
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0xbc]
call fcn.004040bd
mov byte [ebp - 4], 0x15
cmp byte [0x43d043], 0
mov eax, dword [str.hQ_UHRS_uVTNR_]
mov ecx, dword [0x43d040]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40ad1d
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40ad0a
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xa4]
call fcn.004040bd
mov esi, str.VSU
mov byte [ebp - 4], 0x16
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40ad41
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x8c]
call fcn.004040bd
mov byte [ebp - 4], 0x17
mov eax, dword [0x43cf64]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cf68]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40ad9b
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40ad85
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x50c]
call fcn.004040bd
mov byte [ebp - 4], 0x18
mov eax, dword [0x43cf18]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cf1c]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40ade5
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40adcf
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x4f4]
call fcn.004040bd
mov byte [ebp - 4], 0x19
cmp byte [0x43cf63], 0
mov eax, dword [str.lVT_aVHTU]
mov dword [ebp - 0x548], eax
je 0x40ae27
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x548], dl
inc ecx
cmp ecx, 4
jl 0x40ae11
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x4dc]
call fcn.004040bd
mov esi, 0x43d044
mov byte [ebp - 4], 0x1a
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40ae4e
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x4c4]
call fcn.004040bd
mov byte [ebp - 4], 0x1b
lea edi, [ebp - 0x40]
cmp byte [0x43cef9], 0
mov esi, str.zPTZR____0E
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
je 0x40aea2
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x40], dl
inc ecx
cmp ecx, 0xe
jl 0x40ae8f
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x4ac]
call fcn.004040bd
mov esi, str.yMUVUS___7D
mov byte [ebp - 4], 0x1c
lea edi, [ebp - 0x3c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x3c], dl
inc ecx
cmp ecx, 0xd
jl 0x40aec6
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x494]
call fcn.004040bd
mov byte [ebp - 4], 0x1d
cmp byte [0x43ccdf], 0
mov eax, dword [str.kM_OURP_KM_ZQa_.7_06h30J]
mov ecx, dword [0x43ccdc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40af1b
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40af08
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x47c]
call fcn.004040bd
mov byte [ebp - 4], 0x1e
mov eax, dword [0x43cd10]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cd14]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40af62
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40af4c
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x464]
call fcn.004040bd
mov byte [ebp - 4], 0x1f
mov eax, dword [0x43cf58]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cf5c]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40afac
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40af96
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x44c]
call fcn.004040bd
mov byte [ebp - 4], 0x20
mov ecx, ebx
mov eax, dword [str.vXWR_]
mov dword [ebp - 0x544], eax
mov al, byte [0x43ce08]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40afda
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x434]
call fcn.004040bd
mov esi, str.kVV_PLZ_
mov byte [ebp - 4], 0x21
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40b016
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x41c]
call fcn.004040bd
mov byte [ebp - 4], 0x22
mov eax, dword [str.kUUKY]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cb98]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b070
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b05a
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x404]
call fcn.004040bd
mov byte [ebp - 4], 0x23
cmp byte [0x43cccb], 0
mov eax, dword [str.uXHOUP_wrb_uXTO_]
mov ecx, dword [0x43ccc8]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40b0b5
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40b0a2
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x53c]
call fcn.004040bd
mov byte [ebp - 4], 0x24
mov eax, dword [str.lKOHH]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cd5c]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b0fc
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b0e6
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x3ec]
call fcn.004040bd
mov byte [ebp - 4], 0x25
cmp byte [0x43cbdf], 0
mov eax, dword [str.zK_ZJRM_t_K]
mov ecx, dword [0x43cbdc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40b141
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40b12e
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x3d4]
call fcn.004040bd
mov esi, str.hVTOYP_
mov byte [ebp - 4], 0x26
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b165
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x3bc]
call fcn.004040bd
mov byte [ebp - 4], 0x27
cmp byte [0x43cccf], 0
mov eax, dword [0x43cccc]
mov dword [ebp - 0x548], eax
je 0x40b1b7
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x548], dl
inc ecx
cmp ecx, 4
jl 0x40b1a1
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x3a4]
call fcn.004040bd
mov byte [ebp - 4], 0x28
mov eax, dword [str.kLSH]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cc18]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b201
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b1eb
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x38c]
call fcn.004040bd
mov byte [ebp - 4], 0x29
mov eax, dword [str.sV_W_]
mov dword [ebp - 0x544], eax
mov ax, word [0x43d000]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b24b
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b235
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x374]
call fcn.004040bd
mov esi, 0x43cbe0
mov byte [ebp - 4], 0x2a
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xb
jl 0x40b273
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x35c]
call fcn.004040bd
mov esi, str.kLXl_QRZ4A
mov byte [ebp - 4], 0x2b
cmp byte [0x43d0a1], 0
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
je 0x40b2c6
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xa
jl 0x40b2b3
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x344]
call fcn.004040bd
mov esi, str.hNI_NK_2B
mov byte [ebp - 4], 0x2c
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xb
jl 0x40b2eb
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x32c]
call fcn.004040bd
mov esi, str.MXT_sP6_B
mov byte [ebp - 4], 0x2d
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xb
jl 0x40b323
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x314]
call fcn.004040bd
mov byte [ebp - 4], 0x2e
mov eax, dword [str.XHZD]
mov dword [ebp - 0x544], eax
mov ax, word [0x43d080]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b37d
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b367
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x2fc]
call fcn.004040bd
mov esi, str.VSUMZ_
mov byte [ebp - 4], 0x2f
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40b3a3
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x2e4]
call fcn.004040bd
mov byte [ebp - 4], 0x30
mov eax, dword [str.nTTQ]
mov dword [ebp - 0x544], eax
mov ax, word [0x43d008]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b3fd
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b3e7
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x2cc]
call fcn.004040bd
mov byte [ebp - 4], 0x31
cmp byte [0x43cdab], 0
mov eax, dword [str.kLS__T]
mov dword [ebp - 0x548], eax
je 0x40b43f
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x548], dl
inc ecx
cmp ecx, 4
jl 0x40b429
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x524]
call fcn.004040bd
mov esi, 0x43cf08
mov byte [ebp - 4], 0x32
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b466
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x74]
call fcn.004040bd
mov byte [ebp - 4], 0x33
cmp byte [0x43cf17], 0
mov eax, dword [str.VWK_NM_jVTRR]
mov ecx, dword [0x43cf14]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40b4b8
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40b4a5
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x2b4]
call fcn.004040bd
push 0x34
pop eax
mov byte [ebp - 4], al
mov eax, dword [0x43ccd0]
mov dword [ebp - 0x544], eax
mov ax, word [0x43ccd4]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b504
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b4ee
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x29c]
call fcn.004040bd
mov esi, str.zPNYI_
mov byte [ebp - 4], 0x35
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b52b
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x284]
call fcn.004040bd
mov esi, str.oXVWYIyJ_3C
mov byte [ebp - 4], 0x36
cmp byte [0x43ccff], 0
lea edi, [ebp - 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
je 0x40b57d
push 0x34
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x3c], dl
inc ecx
cmp ecx, 0xc
jl 0x40b56a
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x26c]
call fcn.004040bd
mov esi, str.kT_YO_
mov byte [ebp - 4], 0x37
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b5a1
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x254]
call fcn.004040bd
mov byte [ebp - 4], 0x38
mov ecx, ebx
mov ax, word [0x43cec8]
mov word [ebp - 0x548], ax
mov al, byte [0x43ceca]
mov byte [ebp - 0x546], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x548], dl
inc ecx
cmp ecx, 3
jl 0x40b5e1
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x23c]
call fcn.004040bd
mov esi, str.KCKHQR_
mov byte [ebp - 4], 0x39
lea edi, [ebp - 0x20]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 9
jl 0x40b61d
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x224]
call fcn.004040bd
mov byte [ebp - 4], 0x3a
mov ecx, ebx
mov eax, dword [str.kLQN_]
mov dword [ebp - 0x544], eax
mov al, byte [0x43cc10]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40b65b
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x20c]
call fcn.004040bd
mov esi, str.bHRSS_
mov byte [ebp - 4], 0x3b
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b698
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x1f4]
call fcn.004040bd
mov byte [ebp - 4], 0x3c
mov ecx, ebx
mov eax, dword [0x43cea0]
mov dword [ebp - 0x544], eax
mov al, byte [0x43cea4]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40b6d6
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x1dc]
call fcn.004040bd
mov esi, str.oVWY_I_
mov byte [ebp - 4], 0x3d
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b713
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x1c4]
call fcn.004040bd
mov byte [ebp - 4], 0x3e
mov ecx, ebx
mov eax, dword [str.pXVT_]
mov dword [ebp - 0x544], eax
mov al, byte [0x43ced0]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40b751
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x1ac]
call fcn.004040bd
mov esi, str.XIKYO_
mov byte [ebp - 4], 0x3f
lea edi, [ebp - 0x1c]
mov ecx, ebx
push 0x34
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 7
jl 0x40b78e
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x194]
call fcn.004040bd
mov byte [ebp - 4], 0x40
mov eax, dword [0x43cbd0]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cbd4]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b7e8
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 6
jl 0x40b7d2
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x104]
call fcn.004040bd
mov byte [ebp - 4], 0x41
mov ecx, ebx
mov eax, dword [0x43d090]
mov dword [ebp - 0x544], eax
mov al, byte [0x43d094]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40b816
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x17c]
call fcn.004040bd
mov byte [ebp - 4], 0x42
mov ecx, ebx
mov eax, dword [str.hXVR_]
mov dword [ebp - 0x544], eax
mov al, byte [0x43cec4]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40b85a
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x164]
call fcn.004040bd
mov byte [ebp - 4], 0x43
cmp byte [0x43cba3], 0
mov eax, dword [str.kXlR_PIXSOZ]
mov ecx, dword [0x43cba0]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
je 0x40b8b5
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 8
jl 0x40b8a2
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x14c]
call fcn.004040bd
mov byte [ebp - 4], 0x44
mov ecx, ebx
mov eax, dword [0x43cff4]
mov dword [ebp - 0x544], eax
mov al, byte [0x43cff8]
mov byte [ebp - 0x540], al
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x544], dl
inc ecx
cmp ecx, 5
jl 0x40b8e0
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x134]
call fcn.004040bd
mov esi, str.kM_I_DZ2A
mov byte [ebp - 4], 0x45
cmp byte [0x43cd21], 0
lea edi, [ebp - 0x20]
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop esi
je 0x40b939
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x38
xor byte [ebp + ecx - 0x20], dl
inc ecx
cmp ecx, 0xa
jl 0x40b926
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x11c]
call fcn.004040bd
mov byte [ebp - 4], 0x46
mov eax, dword [str.wXIRO]
mov dword [ebp - 0x544], eax
mov ax, word [0x43cd84]
mov word [ebp - 0x540], ax
test ah, ah
je 0x40b97e
xor edx, edx
mov eax, ebx
div esi
add dl, 0x38
xor byte [ebp + ebx - 0x544], dl
inc ebx
cmp ebx, 6
jl 0x40b968
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x2c]
call fcn.004040bd
sub esp, 0x18
mov byte [ebp - 4], 0x47
lea eax, [ebp - 0x5c]
mov ecx, esp
push eax
call fcn.004040f6
mov ebx, dword [ebp - 0x54c]
mov edx, 0x445160
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0xec]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4451d8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0xd4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445100
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0xbc]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445058
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4452e0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x8c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445208
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x50c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4453a0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x4f4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445118
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x4dc]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4451a8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x4c4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445418
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x4ac]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445460
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x494]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445220
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x47c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4452c8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x464]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4454d8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x44c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445148
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x434]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445028
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x41c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445310
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x404]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445328
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x3ec]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4451f0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x3d4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4450d0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x3bc]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445010
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x3a4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445070
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x38c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445040
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x374]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445298
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x35c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4453b8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x344]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445268
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x32c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445388
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x314]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4454c0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x2fc]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4450a0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x2e4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445250
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x2cc]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x444ff8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4454a8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4450e8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x2b4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445178
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x29c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445238
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x284]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4453e8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x26c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x444fe0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x254]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4451c0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x23c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4453d0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x224]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445190
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x20c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445340
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x1f4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445490
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x1dc]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4452f8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x1c4]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445130
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x1ac]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445370
mov ecx, ebx
call fcn.00409ff7
mov ecx, esp
lea eax, [ebp - 0x194]
push eax
call fcn.004040f6
mov edx, 0x4452b0
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x104]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445400
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x17c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x4450b8
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x164]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445478
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x14c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445358
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x134]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445280
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x11c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445088
mov ecx, ebx
call fcn.00409ff7
lea eax, [ebp - 0x2c]
mov ecx, esp
push eax
call fcn.004040f6
mov edx, 0x445430
mov ecx, ebx
call fcn.00409ff7
add esp, 0x18
lea eax, [ebp - 0x3c]
mov ecx, 0x444fc8
push eax
call fcn.0040dc33
mov byte [ebp - 4], 0x48
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x3c]
cmp esi, edi
je 0x40bf40
add esi, 0x18
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x40bf1c
mov eax, dword [esi]
cmp dword [esi - 4], 0xf
lea edx, [esi - 0x18]
jbe 0x40bf27
mov edx, dword [edx]
push ecx
push dword [esi + 0x10]
mov ecx, ebx
push eax
call fcn.0041a877
add esi, 0x30
add esp, 0xc
lea eax, [esi - 0x18]
cmp eax, edi
jne 0x40bf12
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x47
call fcn.0040668e
lea eax, [ebp - 0x54c]
mov ecx, ebx
push eax
lea edx, [ebp - 0x544]
call fcn.0041a8a9
mov esi, dword [ebp - 0x550]
xor eax, eax
mov ecx, dword [ebp - 0x544]
mov edi, esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x54c]
add eax, ecx
push eax
push ecx
mov ecx, esi
call fcn.0040d765
mov ecx, ebx
mov dword [ebp - 0x554], 1
call fcn.0041a916
lea ecx, [ebp - 0x2c]
call fcn.00402636
lea ecx, [ebp - 0x11c]
call fcn.00402636
lea ecx, [ebp - 0x134]
call fcn.00402636
lea ecx, [ebp - 0x14c]
call fcn.00402636
lea ecx, [ebp - 0x164]
call fcn.00402636
lea ecx, [ebp - 0x17c]
call fcn.00402636
lea ecx, [ebp - 0x104]
call fcn.00402636
lea ecx, [ebp - 0x194]
call fcn.00402636
lea ecx, [ebp - 0x1ac]
call fcn.00402636
lea ecx, [ebp - 0x1c4]
call fcn.00402636
lea ecx, [ebp - 0x1dc]
call fcn.00402636
lea ecx, [ebp - 0x1f4]
call fcn.00402636
lea ecx, [ebp - 0x20c]
call fcn.00402636
lea ecx, [ebp - 0x224]
call fcn.00402636
lea ecx, [ebp - 0x23c]
call fcn.00402636
lea ecx, [ebp - 0x254]
call fcn.00402636
lea ecx, [ebp - 0x26c]
call fcn.00402636
lea ecx, [ebp - 0x284]
call fcn.00402636
lea ecx, [ebp - 0x29c]
call fcn.00402636
lea ecx, [ebp - 0x2b4]
call fcn.00402636
lea ecx, [ebp - 0x74]
call fcn.00402636
lea ecx, [ebp - 0x524]
call fcn.00402636
lea ecx, [ebp - 0x2cc]
call fcn.00402636
lea ecx, [ebp - 0x2e4]
call fcn.00402636
lea ecx, [ebp - 0x2fc]
call fcn.00402636
lea ecx, [ebp - 0x314]
call fcn.00402636
lea ecx, [ebp - 0x32c]
call fcn.00402636
lea ecx, [ebp - 0x344]
call fcn.00402636
lea ecx, [ebp - 0x35c]
call fcn.00402636
lea ecx, [ebp - 0x374]
call fcn.00402636
lea ecx, [ebp - 0x38c]
call fcn.00402636
lea ecx, [ebp - 0x3a4]
call fcn.00402636
lea ecx, [ebp - 0x3bc]
call fcn.00402636
lea ecx, [ebp - 0x3d4]
call fcn.00402636
lea ecx, [ebp - 0x3ec]
call fcn.00402636
lea ecx, [ebp - 0x53c]
call fcn.00402636
lea ecx, [ebp - 0x404]
call fcn.00402636
lea ecx, [ebp - 0x41c]
call fcn.00402636
lea ecx, [ebp - 0x434]
call fcn.00402636
lea ecx, [ebp - 0x44c]
call fcn.00402636
lea ecx, [ebp - 0x464]
call fcn.00402636
lea ecx, [ebp - 0x47c]
call fcn.00402636
lea ecx, [ebp - 0x494]
call fcn.00402636
lea ecx, [ebp - 0x4ac]
call fcn.00402636
lea ecx, [ebp - 0x4c4]
call fcn.00402636
lea ecx, [ebp - 0x4dc]
call fcn.00402636
lea ecx, [ebp - 0x4f4]
call fcn.00402636
lea ecx, [ebp - 0x50c]
call fcn.00402636
lea ecx, [ebp - 0x8c]
call fcn.00402636
lea ecx, [ebp - 0xa4]
call fcn.00402636
lea ecx, [ebp - 0xbc]
call fcn.00402636
lea ecx, [ebp - 0xd4]
call fcn.00402636
lea ecx, [ebp - 0xec]
call fcn.00402636
lea ecx, [ebp - 0x5c]
call fcn.00402636
mov eax, esi
call fcn.0041bbb9
ret