Function at 0x3a2709
Capabilities:
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x198
push ebx
push ebp
push esi
push edi
push dword [esp + 0x1bc]
mov ebp, edx
push dword [esp + 0x1bc]
push dword [esp + 0x1bc]
push dword [esp + 0x1bc]
push dword [esp + 0x1bc]
push ebp
push ecx
call fcn.003aaa7d
mov dword [esp + 0x6c], 0x12c061
add esp, 0x1c
imul eax, dword [esp + 0x50], 0x1c
xor edx, edx
xor ebx, ebx
mov ecx, 0x7762430
push 0x6a
pop esi
mov dword [esp + 0x50], eax
xor dword [esp + 0x50], 0x20d0a9c
mov dword [esp + 0x3c], 0x1981b9
add dword [esp + 0x3c], 0xffff8097
shl dword [esp + 0x3c], 3
shr dword [esp + 0x3c], 7
xor dword [esp + 0x3c], 0x19025
mov dword [esp + 0x44], 0xbf724f
add dword [esp + 0x44], 0xffff17d9
xor dword [esp + 0x44], 0x429ab3d8
mov eax, dword [esp + 0x44]
div esi
push 0xb
mov dword [esp + 0x48], eax
xor edx, edx
xor dword [esp + 0x48], 0x9fbcec
mov dword [esp + 0x38], 0x8d29f4
imul eax, dword [esp + 0x38], 0x4b
pop edi
push 0x37
pop esi
push 0x11
mov dword [esp + 0x38], eax
add dword [esp + 0x38], 0xffffdd8b
or dword [esp + 0x38], 0x931ee14e
xor dword [esp + 0x38], 0xbb5e282e
mov dword [esp + 0x30], 0xa5783f
add dword [esp + 0x30], 0xfb45
add dword [esp + 0x30], 0xffffe86f
shr dword [esp + 0x30], 0xa
xor dword [esp + 0x30], 0x877d2
mov dword [esp + 0x78], 0xf31b8c
add dword [esp + 0x78], 0xffff7d63
xor dword [esp + 0x78], 0xfa7e08
mov dword [esp + 0x68], 0xa3a541
mov eax, dword [esp + 0x68]
div edi
xor edx, edx
mov dword [esp + 0x68], eax
add dword [esp + 0x68], 0xffffb9fb
xor dword [esp + 0x68], 0x92197
mov dword [esp + 0x8c], 0xafceae
mov eax, dword [esp + 0x8c]
div esi
pop esi
mov dword [esp + 0x88], eax
xor dword [esp + 0x88], 0x9256b
mov dword [esp + 0x48], 0x8368dd
imul eax, dword [esp + 0x48], 0x37
mov dword [esp + 0x48], eax
add dword [esp + 0x48], 0xf111
xor dword [esp + 0x48], 0x1c31299e
mov dword [esp + 0x40], 0x93e8e3
shl dword [esp + 0x40], 9
shr dword [esp + 0x40], 7
add dword [esp + 0x40], 0xffff991c
xor dword [esp + 0x40], 0x482730
xor edx, edx
mov dword [esp + 0x58], 0xc9e97b
mov eax, dword [esp + 0x58]
div esi
xor edx, edx
mov dword [esp + 0x58], eax
shr dword [esp + 0x58], 9
xor dword [esp + 0x58], 0xbb3d6
mov dword [esp + 0x60], 0x6721bc
add dword [esp + 0x60], 0xc80e
add dword [esp + 0x60], 0x3b7b
xor dword [esp + 0x60], 0x6a4f33
mov dword [esp + 0x4c], 0xc42cda
mov eax, dword [esp + 0x4c]
push 0x26
pop esi
div esi
xor edx, edx
mov dword [esp + 0x4c], eax
xor dword [esp + 0x4c], 0x7a9868c
xor dword [esp + 0x4c], 0x7a63b60
mov dword [esp + 0x70], 0x83133f
mov eax, dword [esp + 0x70]
push 0x7c
pop esi
div esi
xor edx, edx
mov dword [esp + 0x70], eax
xor dword [esp + 0x70], 0x460a5
mov dword [esp + 0x7c], 0xa90de3
add dword [esp + 0x7c], 0xffff5a37
xor dword [esp + 0x7c], 0xab5298
mov dword [esp + 0x30], 0x35ce0b
or dword [esp + 0x30], 0xce696ea2
xor dword [esp + 0x30], 0x16deb549
mov eax, dword [esp + 0x30]
push 0x51
pop esi
div esi
xor edx, edx
mov dword [esp + 0x30], eax
xor dword [esp + 0x30], 0x2a46a16
mov dword [esp + 0x78], 0x3e9d4d
add dword [esp + 0x78], 0xe521
xor dword [esp + 0x78], 0x31f39c
mov dword [esp + 0x18], 0xea62a9
mov eax, dword [esp + 0x18]
push 0x14
pop esi
div esi
xor edx, edx
mov dword [esp + 0x18], eax
or dword [esp + 0x18], 0xcfe4802c
add dword [esp + 0x18], 0xbf26
xor dword [esp + 0x18], 0xcffca5cf
mov dword [esp + 0x68], 0x8f32ff
add dword [esp + 0x68], 0xf17a
shr dword [esp + 0x68], 0x10
xor dword [esp + 0x68], 0x6336
mov dword [esp + 0x84], 0xdea761
shr dword [esp + 0x84], 7
xor dword [esp + 0x84], 0xc8ae3
mov dword [esp + 0x14], 0x88837d
add dword [esp + 0x14], 0xc8ed
add dword [esp + 0x14], 0xb0d9
or dword [esp + 0x14], 0xeb4d0789
xor dword [esp + 0x14], 0xebc5e62d
mov dword [esp + 0x38], 0x263fc8
mov eax, dword [esp + 0x38]
div esi
xor edx, edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
push 0x3f
pop esi
div esi
xor edx, edx
mov dword [esp + 0x38], eax
add dword [esp + 0x38], 0xffff85d7
xor dword [esp + 0x38], 0xfff46b0a
mov dword [esp + 0x6c], 0x402bcc
mov eax, dword [esp + 0x6c]
div edi
mov dword [esp + 0x6c], eax
or dword [esp + 0x6c], 0x697475
xor dword [esp + 0x6c], 0x682b6d
mov dword [esp + 0x20], 0x87c396
shr dword [esp + 0x20], 0xf
shr dword [esp + 0x20], 1
xor dword [esp + 0x20], 0x1da0870c
xor dword [esp + 0x20], 0x1da1d2b7
mov dword [esp + 0x54], 0xcc8454
or dword [esp + 0x54], 0x5a668767
shr dword [esp + 0x54], 2
xor dword [esp + 0x54], 0x16b4bb08
mov dword [esp + 0x80], 0xcfd00d
xor dword [esp + 0x80], 0xf6c64667
xor dword [esp + 0x80], 0xf6039208
mov dword [esp + 0x1c], 0x8344f7
shr dword [esp + 0x1c], 9
add dword [esp + 0x1c], 0xffff279f
imul eax, dword [esp + 0x1c], 0x66
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov dword [esp + 0x1c], eax
xor dword [esp + 0x1c], 0xffc04bfa
mov dword [esp + 0x8c], 0xe4aeb4
shl dword [esp + 0x8c], 0xd
xor dword [esp + 0x8c], 0x95d420a0
mov dword [esp + 0x5c], 0xf0d813
shl dword [esp + 0x5c], 0xc
shl dword [esp + 0x5c], 9
xor dword [esp + 0x5c], 0x2640735
mov dword [esp + 0x24], 0xdf613
shl dword [esp + 0x24], 0x10
shr dword [esp + 0x24], 5
add dword [esp + 0x24], 0xe335
xor dword [esp + 0x24], 0x7b10334
mov dword [esp + 0x28], 0xbd5abb
imul eax, dword [esp + 0x28], 0x3d
mov dword [esp + 0x28], eax
shr dword [esp + 0x28], 0xe
imul eax, dword [esp + 0x28], 0x2e
mov dword [esp + 0x28], eax
xor dword [esp + 0x28], 0x2069ec
mov eax, 0x2a106ff
cmp ecx, 0x63389f6
jg 0x3a2d2a
je 0x3a2ce8
cmp ecx, 0xe24333
je 0x3a2cab
cmp ecx, eax
je 0x3a2c65
cmp ecx, 0x3b968e9
je 0x3a2c4e
cmp ecx, 0x482f540
jne 0x3a2e52
push dword [esp + 0x68]
mov eax, dword [0x3c5088]
mov eax, dword [eax + 0x10]
add eax, 0x10
push eax
push dword [esp + 0x20]
lea eax, [esp + 0xb4]
push eax
push dword [esp + 0x88]
lea eax, [esp + 0xac]
push eax
lea eax, [esp + 0xb8]
push eax
mov eax, dword [0x3c5088]
push esi
mov eax, dword [eax + 0x10]
movzx eax, word [eax + 0x40]
push eax
push dword [esp + 0x54]
mov eax, dword [0x3c5088]
mov ecx, dword [esp + 0xa4]
mov eax, dword [eax + 0x10]
mov dx, word [eax + 0x42]
call fcn.003aac1c
add esp, 0x28
test eax, eax
je 0x3a2c3f
mov ecx, 0x63389f6
jmp 0x3a2b8e
mov edi, 0x74d7c64
mov ecx, 0xd0ebc27
jmp 0x3a2b8e
mov edx, dword [esp + 0x20]
push dword [esp + 0xa0]
mov ecx, dword [esp + 0x70]
call fcn.003a768d
pop ecx
jmp 0x3a2c44
mov eax, dword [esp + 0x60]
mov eax, dword [esp + 0x58]
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x48]
push 1
sub esp, 0xc
push 0x40
pop ecx
call fcn.003ae363
push eax
push dword [esp + 0x84]
mov edx, dword [esp + 0x64]
lea eax, [esp + 0xc0]
push eax
push 0xb
pop ecx
call fcn.003beb4e
add esp, 0x1c
mov ecx, 0x482f540
jmp 0x3a2b8e
mov eax, dword [esp + 0x94]
lea ecx, [esp + 0x90]
cmp eax, dword [esp + 0x28]
jae 0x3a2cc6
call 0x3c33df
jmp 0x3a2cd2
lea edx, [esp + 0x98]
call fcn.003ba1a8
mov esi, eax
mov ecx, 0xd0ebc27
test esi, esi
mov eax, 0x2a106ff
cmovne ecx, eax
jmp 0x3a2b93
push dword [esp + 0x38]
mov edx, dword [esp + 0x1c0]
lea ecx, [esp + 0xa4]
push dword [esp + 0x18]
push dword [esp + 0x8c]
call fcn.003b9d84
add esp, 0xc
test eax, eax
je 0x3a2d1b
xor ebx, ebx
mov edi, 0xbbb9b
inc ebx
jmp 0x3a2d20
mov edi, 0x74d7c64
mov ecx, 0x3b968e9
jmp 0x3a2b8e
cmp ecx, 0x74d7c64
je 0x3a2e21
cmp ecx, 0x7762430
je 0x3a2dd1
cmp ecx, 0xa224f36
je 0x3a2d9c
cmp ecx, 0xd0ebc27
jne 0x3a2e52
mov edx, dword [esp + 0x80]
push dword [esp + 0x90]
mov ecx, dword [esp + 0x58]
call fcn.003a768d
mov edx, dword [esp + 0x90]
pop ecx
mov ecx, dword [esp + 0x1c]
push esi
call fcn.003a768d
mov edx, dword [esp + 0x28]
pop ecx
push dword [esp + 0x98]
mov ecx, dword [esp + 0x60]
call fcn.003a768d
pop ecx
mov ecx, edi
jmp 0x3a2e4d
push dword [esp + 0x1b4]
mov edx, ebp
lea ecx, [esp + 0x94]
push dword [esp + 0x8c]
push dword [esp + 0x6c]
call fcn.003b53d2
add esp, 0xc
test eax, eax
je 0x3a2e6c
mov ecx, 0xe24333
jmp 0x3a2b8e
push dword [esp + 0x74]
lea ecx, [esp + 0xac]
xor esi, esi
push dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
push 0x100
call fcn.003abd84
mov eax, dword [esp + 0x5c]
add esp, 0xc
and dword [esp + 0x98], esi
mov ecx, 0xa224f36
and dword [esp + 0x90], esi
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x94], eax
jmp 0x3a2b8e
mov ecx, dword [0x3c5088]
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + 0x30]
inc dword [ecx]
mov edx, dword [ecx]
mov dword [ecx + 0x10], eax
test eax, eax
jne 0x3a2e3e
mov eax, dword [ecx + 0x24]
mov dword [ecx + 0x10], eax
mov eax, dword [0x3c5088]
cmp edx, dword [eax + 0x18]
jae 0x3a2e60
mov ecx, 0x7762430
mov eax, 0x2a106ff
cmp ecx, 0xbbb9b
jne 0x3a2b93
jmp 0x3a2e6c
mov edx, dword [esp + 0x44]
mov ecx, dword [0x3c5088]
mov dword [ecx], edx
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x198
ret