Function at 0x3aa217
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x7c
push ebx
push ebp
push esi
mov esi, dword [esp + 0x90]
mov ebp, edx
push edi
push dword [esp + 0x9c]
push dword [esp + 0x9c]
push esi
push dword [esp + 0x9c]
push ebp
push ecx
call fcn.003aaa7d
mov dword [esp + 0x90], 0x2c8dc6
lea edi, [esp + 0x94]
xor eax, eax
add esp, 0x18
stosd dword es:[edi], eax
xor edx, edx
xor ebx, ebx
mov ecx, 0xec070ec
push 0x63
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [esp + 0x18], 0xa47a8d
add dword [esp + 0x18], 0x95bd
add dword [esp + 0x18], 0xfffff4d8
mov eax, dword [esp + 0x18]
pop edi
div edi
push 0x49
mov dword [esp + 0x18], eax
xor edx, edx
xor dword [esp + 0x18], 0x1aab6
mov dword [esp + 0x6c], 0xab720e
shr dword [esp + 0x6c], 2
xor dword [esp + 0x6c], 0x2adc82
mov dword [esp + 0x60], 0x4b8520
imul eax, dword [esp + 0x60], 0x35
pop edi
push 0x57
mov dword [esp + 0x60], eax
xor dword [esp + 0x60], 0xfa28fa0
mov dword [esp + 0x40], 0xcad769
shl dword [esp + 0x40], 0xd
shr dword [esp + 0x40], 0xf
xor dword [esp + 0x40], 0xb5da
mov dword [esp + 0x4c], 0x67a63e
mov eax, dword [esp + 0x4c]
div edi
xor edx, edx
mov dword [esp + 0x4c], eax
imul eax, dword [esp + 0x4c], 0x2b
pop edi
mov dword [esp + 0x48], eax
xor dword [esp + 0x48], 0x3d0da9
mov dword [esp + 0x20], 0x224598
imul eax, dword [esp + 0x20], 0x55
mov dword [esp + 0x20], eax
shl dword [esp + 0x20], 0xf
shl dword [esp + 0x20], 3
xor dword [esp + 0x20], 0x6de00000
mov dword [esp + 0x24], 0x275f8e
add dword [esp + 0x24], 0x7092
shr dword [esp + 0x24], 4
add dword [esp + 0x24], 0xffff89be
xor dword [esp + 0x24], 0x206c0
mov dword [esp + 0x44], 0x9e6f02
add dword [esp + 0x44], 0xffff162e
shl dword [esp + 0x44], 7
xor dword [esp + 0x44], 0x4ec1e83f
mov dword [esp + 0x60], 0x9a38d
shr dword [esp + 0x60], 0x10
xor dword [esp + 0x60], 0x972bb
mov dword [esp + 0x40], 0x1a5a4a
or dword [esp + 0x40], 0x8f7cc873
mov eax, dword [esp + 0x40]
div edi
mov dword [esp + 0x40], eax
xor dword [esp + 0x40], 0x1aa64d0
mov dword [esp + 0x58], 0xec545c
add dword [esp + 0x58], 0x1912
xor edx, edx
xor dword [esp + 0x58], 0xedc372
mov dword [esp + 0x38], 0x919590
imul eax, dword [esp + 0x38], 0x22
push 0x13
pop edi
push 0x79
mov dword [esp + 0x3c], eax
shr dword [esp + 0x3c], 0xf
xor dword [esp + 0x3c], 0x3951f
mov dword [esp + 0x38], 0xd04879
xor dword [esp + 0x38], 0x983e68c3
imul eax, dword [esp + 0x38], 0x77
mov dword [esp + 0x38], eax
xor dword [esp + 0x38], 0x16b73709
mov dword [esp + 0x30], 0x330527
shl dword [esp + 0x30], 4
add dword [esp + 0x30], 0x47a5
shr dword [esp + 0x30], 4
xor dword [esp + 0x30], 0x32661a
mov dword [esp + 0x2c], 0x4e70cf
shl dword [esp + 0x2c], 7
imul eax, dword [esp + 0x2c], 0x72
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
div edi
xor edx, edx
mov dword [esp + 0x2c], eax
xor dword [esp + 0x2c], 0x640c2b6
mov dword [esp + 0x58], 0x447183
imul eax, dword [esp + 0x58], 0x42
pop edi
mov dword [esp + 0x54], eax
xor dword [esp + 0x54], 0xb22198f7
xor dword [esp + 0x54], 0xa389b510
mov dword [esp + 0x50], 0xac9643
shr dword [esp + 0x50], 6
xor dword [esp + 0x50], 0x110ad290
xor dword [esp + 0x50], 0x110b3543
mov dword [esp + 0x4c], 0x617c5a
add dword [esp + 0x4c], 0x6674
add dword [esp + 0x4c], 0xcee3
xor dword [esp + 0x4c], 0x696f44
mov dword [esp + 0x1c], 0x656018
add dword [esp + 0x1c], 0xffff9383
add dword [esp + 0x1c], 0xffffbbf4
mov eax, dword [esp + 0x1c]
div edi
mov edi, 0x1a3ad2a
mov dword [esp + 0x1c], eax
xor dword [esp + 0x1c], 0x9b80a
mov dword [esp + 0x18], 0x457f8a
xor dword [esp + 0x18], 0x91db0ff0
or dword [esp + 0x18], 0xbc046a43
shr dword [esp + 0x18], 0xa
xor dword [esp + 0x18], 0x2f22e6
mov dword [esp + 0x64], 0x2c8408
shr dword [esp + 0x64], 0xc
xor dword [esp + 0x64], 0x777cf
mov dword [esp + 0x6c], 0x8297b6
imul eax, dword [esp + 0x6c], 0x68
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0x3505f9cc
mov dword [esp + 0x30], 0xd0f4a7
shr dword [esp + 0x30], 0xf
add dword [esp + 0x30], 0x2be5
xor dword [esp + 0x30], 0xfb375aaa
xor dword [esp + 0x30], 0xfb3d41ab
cmp ecx, edi
je 0x3aa659
cmp ecx, 0x7f3e3d1
je 0x3aa5fd
cmp ecx, 0xc751008
je 0x3aa5a3
cmp ecx, 0xec070ec
je 0x3aa59c
cmp ecx, 0xf58b8e4
jne 0x3aa683
mov edx, dword [esp + 0x30]
push dword [esp + 0x70]
mov ecx, dword [esp + 0x70]
call fcn.003a768d
pop ecx
jmp 0x3aa6a2
mov ecx, 0xc751008
jmp 0x3aa555
push dword [esp + 0x34]
lea eax, [esp + 0x78]
push dword [esp + 0x18]
push ebx
push dword [esp + 0x44]
push dword [esi + 4]
push ecx
push ecx
push dword [esi]
push dword [esp + 0x5c]
push eax
push dword [esp + 0x80]
mov eax, dword [0x3c420c]
push dword [eax]
push dword [esp + 0x70]
push dword [esp + 0x90]
mov edx, dword [esp + 0x98]
mov ecx, dword [esp + 0x7c]
call fcn.003b1eef
add esp, 0x38
cmp eax, dword [esp + 0x48]
jne 0x3aa6a2
mov ecx, edi
jmp 0x3aa555
push dword [esp + 0x64]
lea eax, [esp + 0x78]
push dword [esp + 0x6c]
push dword [esp + 0x78]
push dword [esp + 0x24]
push dword [esi + 4]
push ecx
push ecx
push dword [esi]
push dword [esp + 0x94]
push eax
push dword [esp + 0x44]
mov eax, dword [0x3c420c]
push dword [eax]
push dword [esp + 0x7c]
push dword [esp + 0x54]
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
call fcn.003b1eef
add esp, 0x38
cmp eax, dword [esp + 0x24]
je 0x3aa691
mov ecx, 0xf58b8e4
jmp 0x3aa555
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x78]
call fcn.003bf6a3
mov dword [esp + 0x74], eax
pop ecx
test eax, eax
je 0x3aa67e
mov ecx, 0x7f3e3d1
jmp 0x3aa555
mov ecx, 0xcae2f48
cmp ecx, 0xcae2f48
jne 0x3aa555
jmp 0x3aa6a2
mov eax, dword [esp + 0x70]
xor ebx, ebx
mov dword [ebp], eax
inc ebx
mov eax, dword [esp + 0x74]
mov dword [ebp + 4], eax
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x7c
ret