Function at 0x10034220
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x184
mov eax, dword [0x10160004]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov dword [ebp - 0x108], 0
mov ecx, 0x3e
mov esi, str.w67k0Wrbd2RnrO7h5xXFJQU324ou5JSpFw0G4jo6l1Ab4MFkNcHieSThDIGAT544E1IfI5650uj0j2IU5ldOx0g33OXNL2wUO5Fq2xS2CGm0xCT71GqMx7aL7GT6tBiE3Wro6D42Sg6IsM1Q2Ju6lSDnFsLo0Jf4i3w3AD6I5r6Ktjp2lMu4swG773c5eOI33fum0bCdhK6522EquL1Nw3l0QuF4OCkFS4n5055COS7Xj0vUIi73GD6uQ
lea edi, [ebp - 0x100]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x130], 0x357
xor eax, eax
mov word [ebp - 0x134], ax
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x15c], str.q6B6H4Fur45V3mvo76V1T264K1617Oi77e1wStda4f2v4n2jh0di6u2c27d1fmi53tpd35pJ26Fr16TxND04L6uuR2IaEu6Q7RgEE2c45w5fi53pKWWo163sP4KB3d4VIaNv3g4CKxr4Qhuq125xhw1D5R3wHbFiS34XdPMBJfcrp1747wo22351C143C711fLl2F0jAWLbOQ77jdwX1B6o2C101veA2F143SxI6jK5d5p4gBsAQFSKQfrK3qb1x4SS3LxN7216LjBg16xa7fWhddKW6Un35gSE67WG3b7713l3FGll44a32VsHI47M4XPBtHBTe4Vww22RKhQj3m746iqiKovKmgio5xHh2S2H21r1aeGw5dHrvp3PI5ildr6mWvT64c1T7JDEGIbpuFXwU7dC6i22MM5E64a0HGHmSrR66m3fgwv1oRG523JxMPq30E5guGr6k4I3CG03s2h346m425oFo0vD7Fws2pe1IifW44eG3EhnOc24W1S2473qdC0p5n271johX32VI2K5rOfb212GgfAOKnNI4tK2VSXIqjh45UUwXOx6xEOHtEuM4pb15WD75nag14BTVs6346cLgta3Q4kuN30Un410XwF3idd6C742wrO6Ch2SG2e66MnvsBM04Qe7iHSIfmF5MxQ1VF2i0gcG57S3Eh75FKaJpwTiKPnu6b06L44pNR1l1vUVFLa6J5drDBCLVn4dP470KbmTr3uSr7PNNF3qqSs2uvD0XK2wbANqE1bd02Rw00h5vOoTEh50av7f0jn4ehRPbJM1e3qWBjQrK42FpXhffN4P3wH4NE06tEBT5kMNsRThQ7A1pWdwhdV2xv7S
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x154], 0x10033ec0
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.10103514
add esp, 4
mov dword [ebp - 0x144], eax
mov edx, dword [ebp - 0x108]
xor edx, 0x1a8
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x108]
add eax, dword [ebp - 0x11c]
mov dword [ebp - 0x110], eax
imul ecx, dword [ebp - 0x108], 0x160
mov dword [ebp - 0x110], ecx
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x110], 0
imul edx, dword [ebp - 0x10c], 0x307
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x11c]
xor eax, 0x301
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0x154]
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x10c]
xor eax, 0x2f0
mov dword [ebp - 0x11c], eax
mov ecx, dword [ebp - 0x10c]
add ecx, dword [ebp - 0x124]
mov dword [ebp - 0x11c], ecx
mov edx, dword [ebp - 0x130]
push edx
call fcn.10103514
add esp, 4
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x130]
push eax
push 0
mov ecx, dword [ebp - 0x138]
push ecx
call fcn.101021f0
add esp, 0xc
mov dword [ebp - 0x124], 0x20f
mov edx, dword [ebp - 0x138]
mov dword [ebp - 0x118], edx
cmp dword [ebp - 0x110], 0x357
jne 0x10034418
mov dword [ebp - 0x110], 0
imul eax, dword [ebp - 0x124], 0x358
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x13c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x15c]
add eax, dword [ebp - 0x110]
movsx ecx, byte [eax]
xor edx, ecx
mov byte [ebp - 0x125], dl
mov edx, 0x2c0
sub edx, dword [ebp - 0x124]
mov dword [ebp - 0x11c], edx
push 1
lea eax, [ebp - 0x125]
push eax
mov ecx, dword [ebp - 0x118]
push ecx
call fcn.10101c70
add esp, 0xc
mov edx, dword [ebp - 0x13c]
add edx, 1
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x118]
add eax, 1
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0x11c]
xor ecx, 0x245
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x11c]
xor edx, 0x228
mov dword [ebp - 0x124], edx
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x110]
add ecx, 1
mov dword [ebp - 0x110], ecx
mov edx, dword [ebp - 0x108]
cmp edx, dword [ebp - 0x130]
jl 0x10034402
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x108], 0
mov ecx, dword [ebp - 0x124]
add ecx, dword [ebp - 0x10c]
mov dword [ebp - 0x11c], ecx
push 1
mov edx, dword [ebp - 0x118]
push edx
mov eax, dword [ebp - 0x140]
push eax
call fcn.10101c70
add esp, 0xc
mov ecx, dword [ebp - 0x10c]
xor ecx, 0x256
mov dword [ebp - 0x124], ecx
mov edx, dword [ebp - 0x140]
add edx, 1
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0x118]
add eax, 1
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0x10c]
xor ecx, 0x27b
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x11c], 0x10856
mov edx, dword [ebp - 0x108]
add edx, 1
mov dword [ebp - 0x108], edx
mov eax, dword [ebp - 0x108]
cmp eax, dword [ebp - 0x130]
jl 0x100344f9
mov ecx, 0x2a3
sub ecx, dword [ebp - 0x124]
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x138]
push edx
call fcn.1010350f
add esp, 4
movzx eax, word [ebp - 0x134]
push eax
movzx ecx, word [ebp - 0x134]
push ecx
mov edx, dword [ebp - 0x144]
push edx
mov eax, dword [ebp - 0x130]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.10006a80
add esp, 0x18
mov eax, dword [ebp - 0x144]
push eax
call fcn.1010350f
add esp, 4
mov dword [ebp - 0x110], 0x66d
mov dword [ebp - 0x104], 0xd3
mov dword [ebp - 0x120], 5
mov dword [ebp - 0x108], 0
jmp 0x10034626
mov ecx, dword [ebp - 0x108]
add ecx, 1
mov dword [ebp - 0x108], ecx
mov edx, dword [ebp - 0x108]
cmp edx, dword [ebp - 0x104]
jge 0x10034670
sub esp, 8
movsd xmm0, qword [0x101551a8]
movsd qword [esp], xmm0
cvtsi2sd xmm0, dword [ebp - 0x120]
sub esp, 8
movsd qword [esp], xmm0
call fcn.10103950
add esp, 0x10
fstp qword [ebp - 0x16c]
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x120], edx
jmp 0x10034617
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x104], 0
jmp 0x1003469f
mov eax, dword [ebp - 0x104]
add eax, 1
mov dword [ebp - 0x104], eax
lea ecx, [ebp - 0x100]
push ecx
call fcn.101032d0
add esp, 4
cmp dword [ebp - 0x104], eax
jae 0x100346f1
mov edx, dword [ebp - 0x104]
movsx eax, byte [ebp + edx - 0x100]
push eax
call fcn.10103080
add esp, 4
test eax, eax
je 0x100346ef
mov ecx, dword [ebp - 0x104]
movsx edx, byte [ebp + ecx - 0x100]
sub edx, 0x24
mov eax, dword [ebp - 0x104]
mov byte [ebp + eax - 0x100], dl
jmp 0x10034690
cmp dword [ebp - 0x110], 0
je 0x10034bf6
lea ecx, [ebp - 0x100]
push ecx
call fcn.101032d0
add esp, 4
add eax, 1
push eax
call fcn.10103514
add esp, 4
mov dword [ebp - 0x118], eax
lea edx, [ebp - 0x100]
push edx
call fcn.101032d0
add esp, 4
add eax, 1
push eax
push 0
mov eax, dword [ebp - 0x118]
push eax
call fcn.101021f0
add esp, 0xc
mov dword [ebp - 0x104], 0
jmp 0x1003475e
mov ecx, dword [ebp - 0x104]
add ecx, 1
mov dword [ebp - 0x104], ecx
lea edx, [ebp - 0x100]
push edx
call fcn.101032d0
add esp, 4
cmp dword [ebp - 0x104], eax
jae 0x100347a4
lea eax, [ebp - 0x100]
push eax
call fcn.101032d0
add esp, 4
lea ecx, [ebp + eax - 0x100]
sub ecx, dword [ebp - 0x104]
mov edx, dword [ebp - 0x118]
add edx, dword [ebp - 0x104]
mov al, byte [ecx - 1]
mov byte [edx], al
jmp 0x1003474f
cmp dword [ebp - 0x118], 0
je 0x100347bc
mov ecx, dword [ebp - 0x118]
push ecx
call fcn.1010350f
add esp, 4
push 4
mov edx, dword [ebp - 0x110]
push edx
call fcn.10103504
add esp, 8
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x120], 0x16c
mov dword [ebp - 0x108], 7
mov dword [ebp - 0x104], 0
jmp 0x10034802
mov eax, dword [ebp - 0x104]
add eax, 1
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp - 0x104]
cmp ecx, dword [ebp - 0x120]
jge 0x1003484f
sub esp, 8
movsd xmm0, qword [0x101551a0]
movsd qword [esp], xmm0
cvtsi2sd xmm0, dword [ebp - 0x108]
sub esp, 8
movsd qword [esp], xmm0
call fcn.10103950
add esp, 0x10
fstp qword [ebp - 0x174]
mov edx, dword [ebp - 0x108]
add edx, 2
mov dword [ebp - 0x108], edx
jmp 0x100347f3
cmp dword [ebp - 0x12c], 0
je 0x10034bf6
mov dword [ebp - 0x104], 0x179
mov dword [ebp - 0x108], 0
jmp 0x10034881
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x108]
cmp ecx, dword [ebp - 0x104]
jge 0x100348ca
push 4
cvtsi2sd xmm0, dword [ebp - 0x104]
sub esp, 8
movsd qword [esp], xmm0
call fcn.10103bd9
add esp, 0xc
call fcn.100ff240
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x104]
cdq
mov ecx, 0x2b
idiv ecx
mov dword [ebp - 0x104], eax
jmp 0x10034872
push 0
call fcn.10001010
add esp, 4
push eax
call fcn.1010354b
add esp, 4
mov dword [ebp - 0x104], 0x1b4
mov dword [ebp - 0x120], 0
jmp 0x10034902
mov edx, dword [ebp - 0x120]
add edx, 1
mov dword [ebp - 0x120], edx
mov eax, dword [ebp - 0x120]
cmp eax, dword [ebp - 0x104]
jge 0x10034953
cvtsi2sd xmm0, dword [ebp - 0x104]
sub esp, 8
movsd qword [esp], xmm0
call fcn.101036b0
add esp, 8
fstp qword [ebp - 0x17c]
movsd xmm0, qword [ebp - 0x17c]
cvttsd2si ecx, xmm0
mov eax, dword [ebp - 0x104]
cdq
idiv ecx
mov eax, dword [ebp - 0x104]
sub eax, edx
mov dword [ebp - 0x104], eax
jmp 0x100348f3
mov dword [ebp - 0x148], 0
jmp 0x1003496e
mov ecx, dword [ebp - 0x148]
add ecx, 1
mov dword [ebp - 0x148], ecx
mov edx, dword [ebp - 0x148]
cmp edx, dword [ebp - 0x110]
jge 0x1003499e
call fcn.1010352a
mov ecx, dword [ebp - 0x110]
add ecx, 1
cdq
idiv ecx
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x12c]
mov dword [ecx + eax*4], edx
jmp 0x1003495f
mov dword [ebp - 0x108], 0x1a4
mov dword [ebp - 0x104], 0
jmp 0x100349c3
mov edx, dword [ebp - 0x104]
add edx, 1
mov dword [ebp - 0x104], edx
mov eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0x108]
jge 0x10034a14
sub esp, 8
movsd xmm0, qword [0x101551e0]
movsd qword [esp], xmm0
call fcn.10103620
add esp, 8
fstp qword [ebp - 0x184]
movsd xmm0, qword [ebp - 0x184]
cvttsd2si ecx, xmm0
mov eax, dword [ebp - 0x108]
cdq
idiv ecx
mov eax, dword [ebp - 0x108]
sub eax, edx
mov dword [ebp - 0x108], eax
jmp 0x100349b4
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 1
jmp 0x10034a48
mov ecx, dword [ebp - 0x150]
add ecx, 1
mov dword [ebp - 0x150], ecx
mov edx, dword [ebp - 0x14c]
add edx, 1
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x14c]
cmp eax, dword [ebp - 0x110]
jge 0x10034be7
mov ecx, dword [ebp - 0x150]
mov edx, dword [ebp - 0x12c]
mov eax, dword [edx + ecx*4]
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x12c]
mov eax, dword [edx + ecx*4]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x114], 0
jmp 0x10034a9f
mov ecx, dword [ebp - 0x114]
add ecx, 1
mov dword [ebp - 0x114], ecx
cmp dword [ebp - 0x114], 0x20
jae 0x10034be2
mov edx, 1
mov ecx, dword [ebp - 0x114]
shl edx, cl
and edx, dword [ebp - 0x160]
je 0x10034b61
mov eax, 1
mov ecx, dword [ebp - 0x114]
shl eax, cl
and eax, dword [ebp - 0x158]
je 0x10034af8
mov ecx, dword [ebp - 0x114]
add ecx, 1
mov edx, 1
shl edx, cl
or edx, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], edx
jmp 0x10034b5f
mov eax, 1
mov ecx, dword [ebp - 0x114]
shl eax, cl
and eax, dword [ebp - 0x10c]
je 0x10034b46
mov edx, 1
mov ecx, dword [ebp - 0x114]
shl edx, cl
not edx
and edx, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], edx
mov ecx, dword [ebp - 0x114]
add ecx, 1
mov eax, 1
shl eax, cl
or eax, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], eax
jmp 0x10034b5f
mov edx, 1
mov ecx, dword [ebp - 0x114]
shl edx, cl
or edx, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], edx
jmp 0x10034bdd
mov eax, 1
mov ecx, dword [ebp - 0x114]
shl eax, cl
and eax, dword [ebp - 0x158]
je 0x10034bdd
mov edx, 1
mov ecx, dword [ebp - 0x114]
shl edx, cl
and edx, dword [ebp - 0x10c]
je 0x10034bc4
mov eax, 1
mov ecx, dword [ebp - 0x114]
shl eax, cl
not eax
and eax, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x114]
add ecx, 1
mov edx, 1
shl edx, cl
or edx, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], edx
jmp 0x10034bdd
mov eax, 1
mov ecx, dword [ebp - 0x114]
shl eax, cl
or eax, dword [ebp - 0x10c]
mov dword [ebp - 0x10c], eax
jmp 0x10034a90
jmp 0x10034a2a
mov ecx, dword [ebp - 0x12c]
push ecx
call fcn.1010350f
add esp, 4
mov eax, dword [ebp - 0x164]
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ff22d
mov esp, ebp
pop ebp
ret