Function at 0x410210
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x444
mov eax, dword [str.p_u_u]
mov dword [esp + 0x44], 0x57e5491d
mov dword [esp + 0x48], 0x53fb55d2
mov dword [esp + 0x4c], 0x5fea51e4
mov dword [esp + 0x50], 0x5b295dfd
mov dword [esp + 0x54], 0xa7d45925
mov dword [esp + 0x58], 0xa3c2a5d4
mov dword [esp + 0x5c], 0xaff5a1c8
mov dword [esp + 0x60], 0xab18ad05
mov dword [esp + 0x64], 0xb705a904
mov dword [esp + 0x68], 0xb30db50f
mov dword [esp + 0x6c], 0xbfecb1d0
mov dword [esp + 0x70], 0xbbdabde0
mov dword [esp + 0x74], 0x87f6b9c9
mov dword [esp + 0x78], 0x83f285f6
mov dword [esp + 0x7c], 0x8fee81c7
mov dword [esp + 0x80], 0x8b238dd7
mov dword [esp + 0x84], 0x97ec893a
mov dword [esp + 0x88], 0x93d595e8
mov dword [esp + 0x8c], 0x9f2691f0
mov dword [esp + 0x90], 0x9be69de6
mov dword [esp + 0x94], 0xe78699f1
mov dword [esp + 0x98], 0xe352e5a5
mov dword [esp + 0x9c], 0xef5ae150
mov dword [esp + 0xa0], 0xebb1ed41
mov dword [esp + 0xa4], 0xf758e945
mov dword [esp + 0xa8], 0xf35bf5a3
mov dword [esp + 0xac], 0xff8df14c
mov dword [esp + 0xb0], 0xfb85fd81
mov dword [esp + 0xb4], 0xc7b4f983
mov dword [esp + 0xb8], 0xc3b8c5bb
mov dword [esp + 0xbc], 0xcfa6c1a0
mov dword [esp + 0xc0], 0xcb82cd9b
mov dword [esp + 0xc4], 0xd783c994
mov dword [esp + 0xc8], 0xd3a6d580
mov dword [esp + 0xcc], 0xdf6ad1b0
mov dword [esp + 0xd0], 0xdb6ddd75
mov dword [esp + 0xd4], 0x2746d975
mov dword [esp + 0xd8], 0x238f256f
mov dword [esp + 0xdc], 0x2f99218f
mov dword [esp + 0xe0], 0x2b432d9f
mov dword [esp + 0xe4], 0x37792948
mov dword [esp + 0xe8], 0x338c359c
mov dword [esp + 0xec], 0x3f8b3183
mov dword [esp + 0xf0], 0x3b493d91
mov dword [esp + 0xf4], 0x7773949
mov dword [esp + 0xf8], 0x370057d
mov dword [esp + 0xfc], 0xf7c0170
mov dword [esp + 0x100], 0xb780d7c
mov dword [esp + 0x104], 0x17760978
mov dword [esp + 0x108], 0x13b3154b
mov dword [esp + 0x10c], 0x1fbf11ba
mov dword [esp + 0x110], 0x1bb31da2
mov dword [esp + 0x114], 0x671b196b
mov dword [esp + 0x118], 0x6319651b
mov dword [esp + 0x11c], 0x6f116112
mov dword [esp + 0x120], 0x6b6a6d16
mov byte [esp + 0x124], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0xe0
ja 0x4104be
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x44]
mov esi, ecx
xor esi, 0xf335e16e
and ecx, 0xf335e16e
lea ecx, [esi + ecx*2]
xor ecx, edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
add cl, 0xda
mov edx, dword [esp]
mov byte [esp + edx + 0x44], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0xe1
jb 0x410480
mov edi, dword [esp + 0x470]
mov ebx, dword [esp + 0x46c]
lea esi, [esp + 0x44]
push 0
push 0
push 0
push 0
push esi
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x449f88]
xor ebp, ebp
xor eax, eax
test ebx, ebx
setne al
xor esi, esi
jmp dword [eax*4 + 0x44a048]
mov ecx, dword [esp + 0x458]
mov ebp, dword [0x44f398]
mov dword [esp + 0x44], 0x939290cb
mov byte [esp + 0x48], 0
mov dword [esp], 0
mov edx, dword [esp]
cmp edx, 4
ja 0x410572
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov edi, dword [esp]
movzx edi, byte [esp + edi + 0x44]
mov ebx, edx
xor ebx, 0x5b32f9e4
and edx, 0xdb32f9e4
lea edx, [ebx + edx*2]
lea ebx, [edx + edi]
and edx, edi
add edx, edx
sub ebx, edx
mov dword [esp + 0x10], ebx
mov edx, dword [esp + 0x10]
add dl, 0x8c
mov edi, dword [esp]
mov byte [esp + edi + 0x44], dl
inc dword [esp]
mov edx, dword [esp]
cmp edx, 5
jb 0x410530
movzx edx, word [esp + 0x44]
push 0
push edx
push ecx
mov dword [esp + 0x4c], eax
push eax
call ebp
xor ecx, ecx
mov dword [esp + 0xc], eax
test eax, eax
setne cl
jmp dword [ecx*4 + 0x449f90]
xor esi, esi
xor ebp, ebp
mov edi, dword [esp + 0x470]
jmp 0x410609
mov ebp, dword [esp + 0x45c]
jmp dword [0x449f9c]
jmp dword [0x449fdc]
push 0
push ebx
call dword [0x44f3b0]
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 8], 0
xor ebp, ebp
jmp dword [ecx*4 + 0x449fe0]
mov dword [esp + 0x44], 0
xor ebp, ebp
xor esi, esi
jmp dword [0x449fe8]
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x44a068]
mov dword [edi], esi
test ebp, ebp
setne al
add esp, 0x444
pop esi
pop edi
pop ebx
pop ebp
ret
push dword [esp + 0x40]
call dword [0x44f3c0]
xor eax, eax
mov ebx, dword [esp + 0x46c]
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44a048]
xor eax, eax
test ebp, ebp
setne al
jmp dword [eax*4 + 0x44a060]
push ebp
call fcn.0043d440
add esp, 4
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x44a068]
mov dword [ebx], ebp
jmp dword [0x44a058]
mov dword [esp + 0x10], 0x49db4bb1
mov dword [esp + 0x14], 0x45d347d9
mov dword [esp + 0x18], 0x41d943d3
mov dword [esp + 0x1c], 0x7d5e7f86
mov dword [esp + 0x20], 0x799b7b9d
mov dword [esp + 0x24], 0x75ec77e5
mov dword [esp + 0x28], 0x71e17395
mov dword [esp + 0x2c], 0x6d8f6ff9
mov dword [esp + 0x30], 0x69ed6bf2
mov dword [esp + 0x34], 0x65a567f8
mov dword [esp + 0x38], 0x6364
mov byte [esp + 0x3c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2c
ja 0x4106fe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x10]
add eax, 0x39295693
xor eax, ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x44]
add al, 0x21
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2d
jb 0x4106d0
movzx eax, word [esp + 0x10]
test ax, ax
je 0x410721
lea esi, [esp + 0x44]
lea ecx, [esp + 0x12]
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x410710
mov word [esi], 0
movzx eax, word [0x44f4ce]
test ax, ax
je 0x410755
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi + ecx], ax
movzx eax, word [ecx + 0x44f4d0]
add ecx, 2
test ax, ax
jne 0x410740
add esi, ecx
mov word [esi], 0
lea eax, [esp + 0x44]
push 0x20000000
push 0xffffffffffffffff
push eax
push ebx
call dword [0x44f3a8]
mov eax, dword [0x44f3ac]
mov ecx, dword [case.0x4104e2.14]
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov dword [esp + 8], 0
mov edx, dword [esp + 0x460]
mov ecx, edx
neg ecx
mov ecx, 0
sbb ecx, ecx
push 0
mov esi, dword [esp + 0x46c]
push esi
push esi
push dword [esp + 0x470]
push ecx
push edx
push ebx
call eax
xor ecx, ecx
test eax, eax
setne cl
xor ebp, ebp
jmp dword [ecx*4 + 0x449fc8]
lea eax, [esp + 0x44]
push eax
push ebx
call dword [0x44f3b4]
jmp dword [0x449ff0]
mov ecx, dword [esp + 0x44]
test eax, eax
setne al
test ecx, ecx
setne dl
and dl, al
movzx eax, dl
jmp dword [eax*4 + 0x449ff8]
lea eax, [esi + ecx]
inc eax
push eax
push ebp
call fcn.00440190
add esp, 8
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x44a000]
mov dword [esp + 0x10], 0
mov ecx, eax
add ecx, esi
lea edx, [esp + 0x10]
push edx
push dword [esp + 0x48]
push ecx
push ebx
mov ebp, eax
call dword [0x44f3b8]
add esi, dword [esp + 0x10]
xor eax, eax
jmp dword [eax*4 + 0x44a018]
jmp dword [0x44a010]
mov eax, 1
jmp dword [eax*4 + 0x44a018]
jmp dword [0x449fe8]
lea eax, [esp + 0x44]
push eax
push ebx
call dword [0x44f3b4]
jmp case.0x4104e2.24
xor eax, eax
test ebp, ebp
setne al
jmp dword [eax*4 + 0x44a020]
mov byte [ebp + esi], 0
mov dword [esp + 8], esi
mov eax, dword [case.0x4104e2.16]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44a038]
mov eax, dword [0x44f39c]
mov dword [esp + 0x10], 0x39ba3b3c
mov word [esp + 0x14], 0
mov byte [esp + 0x16], 0
mov dword [esp + 4], 0
mov ecx, dword [esp + 4]
cmp ecx, 6
ja 0x41091e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 4]
mov edx, dword [esp + 4]
movzx edx, byte [esp + edx + 0x10]
mov ebx, ecx
xor ebx, 0x82b6eb0b
and ecx, 0x2b6eb0b
lea ecx, [ebx + ecx*2]
xor ecx, edx
mov dword [esp], ecx
mov ecx, dword [esp]
add cl, 0xc9
mov edx, dword [esp + 4]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 4]
mov ecx, dword [esp + 4]
cmp ecx, 7
jb 0x4108e0
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], 0x590b5b14
mov dword [esp + 0x48], 0x5d0a5f0d
mov dword [esp + 0x4c], 0x535c
mov dword [esp + 4], 0
mov edx, dword [esp + 4]
cmp edx, 0xb
ja 0x41098e
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov ebx, dword [esp + 4]
movzx ebx, byte [esp + ebx + 0x44]
mov edi, edx
xor edi, 0xe5f98ef
and edx, 0xe5f98ef
lea edx, [edi + edx*2]
xor edx, ebx
mov dword [esp], edx
mov edx, dword [esp]
add dl, 0x55
mov edi, dword [esp + 4]
mov byte [esp + edi + 0x44], dl
inc dword [esp + 4]
mov edx, dword [esp + 4]
cmp edx, 0xc
jb 0x410950
lea edx, [esp + 0x44]
push ecx
push 0
push 0
push 0
push ebp
push edx
push dword [esp + 0x24]
call eax
mov eax, dword [0x44f39c]
mov dword [esp + 0x10], 0x39ba3b3c
mov word [esp + 0x14], 0
mov byte [esp + 0x16], 0
mov dword [esp + 4], 0
mov ecx, dword [esp + 4]
cmp ecx, 6
ja 0x410a0e
nop
nop
nop
nop
nop
mov ecx, dword [esp + 4]
mov edx, dword [esp + 4]
movzx edx, byte [esp + edx + 0x10]
mov edi, ecx
xor edi, 0x82b6eb0b
and ecx, 0x2b6eb0b
lea ecx, [edi + ecx*2]
xor ecx, edx
mov dword [esp], ecx
mov ecx, dword [esp]
add cl, 0xc9
mov edx, dword [esp + 4]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 4]
mov ecx, dword [esp + 4]
cmp ecx, 7
jb 0x4109d0
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], 0x590b5b14
mov dword [esp + 0x48], 0x5d0a5f0d
mov dword [esp + 0x4c], 0x535c
mov dword [esp + 4], 0
mov edx, dword [esp + 4]
cmp edx, 0xb
ja 0x410a7e
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov edi, dword [esp + 4]
movzx edi, byte [esp + edi + 0x44]
mov ebx, edx
xor ebx, 0xe5f98ef
and edx, 0xe5f98ef
lea edx, [ebx + edx*2]
xor edx, edi
mov dword [esp], edx
mov edx, dword [esp]
add dl, 0x55
mov edi, dword [esp + 4]
mov byte [esp + edi + 0x44], dl
inc dword [esp + 4]
mov edx, dword [esp + 4]
cmp edx, 0xc
jb 0x410a40
push ecx
push 0
push 0
push 0
push ebp
push esi
push dword [esp + 0x24]
call eax
jmp dword [0x449fa0]
mov ebx, eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp + 8], 0
xor ebp, ebp
mov edi, dword [esp + 0x470]
jmp dword [eax*4 + 0x449fa8]
movzx eax, byte [0x44f4cc]
jmp dword [eax*4 + 0x449fb0]
push ebx
call dword [0x44f3c0]
push ebx
call dword [0x44f3c0]
jmp dword [0x44a040]
push dword [esp + 0xc]
call dword [0x44f3c0]
mov esi, dword [esp + 8]
jmp 0x410609
add al, 0x41
add bl, bh
add al, 0x41
add byte [ebp + eax + 0x5a10041], dl
inc ecx
add byte [eax - 0x5effbef8], ch
or dword [ecx], eax
xchg ebx, eax
or al, byte [ecx]
test al, 8
inc ecx
add dh, dl
or al, byte [ecx]
mov ah, 0xa
inc ecx
add byte [ebp + 7], ch
inc ecx
add byte [eax + 6], bl
inc ecx
add byte [eax - 0x7fffbef9], al
pop es
inc ecx
add byte [edx - 0x7fffbef9], al
pop es
inc ecx
add byte [edx - 0x4fffbef8], ah
add eax, 0x5b00041
inc ecx
add byte [eax - 0x4fffbefb], dh
add eax, 0x5b60041
inc ecx
add byte [edx - 0x28ffbef8], ah
add eax, 0x7d00041
inc ecx
add byte [eax + 8], ch
inc ecx
add dl, ah
pop es
inc ecx
add byte [eax + 8], ch
inc ecx
add byte [ecx + 8], bh
inc ecx
add ah, bh
pop es
inc ecx
add byte [eax], bl
or byte [ecx], al
push eax
or byte [ecx], al
push eax
or byte [ecx], al
push eax
or byte [ecx], al
push esi
or byte [ecx], al
push eax
or byte [ecx], al
bound ecx, qword [eax]
inc ecx
add byte [ecx + 8], bh
inc ecx
add byte [eax + ecx + 0x8870041], cl
inc ecx
add byte [eax - 0x5fffbef8], ah
or byte [ecx], al
mov byte [0xa0004108], al
or byte [ecx], al
leave
or al, byte [ecx]
ret 0x410a