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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x42984839
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x42a15140]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push esi
push edi
mov eax, dword [0x42a15140]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x14], eax
mov eax, dword [ecx + eax + 0x10]
and eax, 0xe00
cmp eax, 0x400
mov dword [esp + 0x18], edi
je 0x42948178
cmp eax, 0x800
je 0x42948169
mov dword [esp + 0x10], 0xa
mov byte [esp + 0x1c], 0x2e
jmp 0x42948185
mov dword [esp + 0x10], 0x10
mov byte [esp + 0x1c], 0x68
jmp 0x42948185
mov dword [esp + 0x10], 8
mov byte [esp + 0x1c], 0x6f
push 0x20
xor ebx, ebx
xor eax, eax
pop esi
mov edx, dword [esp + 0x10]
lea ecx, [esi + eax]
shr ecx, 1
sar edx, cl
test edx, edx
je 0x4294819f
mov eax, ecx
jmp 0x429481a1
mov esi, ecx
mov ecx, esi
sub ecx, eax
cmp ecx, 1
ja 0x4294818c
mov ecx, edi
call sym.cryptopp.dll_public:_unsigned_int___thiscall_CryptoPP::Integer::BitCount_void_const
dec esi
xor edx, edx
div esi
lea esi, [esp + 0x48]
inc eax
push eax
call fcn.4294209d
push edi
lea ecx, [esp + 0x24]
mov dword [esp + 0x7c], ebx
call sym.cryptopp.dll_public:_void___thiscall_CryptoPP::Integer::constructor_class_CryptoPP::Integer_const__
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 1
call sym.cryptopp.dll_public:_void___thiscall_CryptoPP::Integer::constructor_void_
mov byte [esp + 0x78], 2
mov esi, 0x4299aee0
lea edi, [esp + 0x54]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x18]
cmp dword [esi + 0x10], 1
jne 0x42948210
push 0x2d
push dword [esp + 0x18]
call fcn.42942247
pop ecx
pop ecx
lea ecx, [esp + 0x20]
call sym.cryptopp.dll_public:_void___thiscall_CryptoPP::Integer::Negate_void_
mov ecx, esi
call sym.cryptopp.dll_public:_bool___thiscall_CryptoPP::Integer::operator__void_const
test al, al
je 0x42948228
push 0x30
push dword [esp + 0x18]
call fcn.42942247
pop ecx
pop ecx
lea ecx, [esp + 0x20]
call sym.cryptopp.dll_public:_bool___thiscall_CryptoPP::Integer::operator__void_const
test al, al
mov esi, dword [esp + 0x50]
jne 0x42948292
push dword [esp + 0x10]
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x24]
push eax
call sym.cryptopp.dll_public:_static_void___cdecl_CryptoPP::Integer::Divide_unsigned_int___class_CryptoPP::Integer___class_CryptoPP::Integer_const___unsigned_int_
mov eax, dword [esp + 0x28]
mov al, byte [esp + eax + 0x64]
mov byte [esi + ebx], al
add esp, 0x10
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x24]
inc ebx
call fcn.429468e5
lea ecx, [esp + 0x20]
call sym.cryptopp.dll_public:_bool___thiscall_CryptoPP::Integer::operator__void_const
test al, al
je 0x42948239
jmp 0x4294828e
dec ebx
movzx eax, byte [esi + ebx]
push eax
push dword [esp + 0x18]
call fcn.42942247
pop ecx
pop ecx
test ebx, ebx
jne 0x4294827d
push dword [esp + 0x1c]
push dword [esp + 0x18]
call fcn.42942247
pop ecx
pop ecx
push dword [esp + 0x3c]
lea ecx, [esp + 0x3c]
push dword [esp + 0x44]
mov edi, eax
call sym.cryptopp.dll_public:_void___thiscall_CryptoPP::AlignedAllocator_unsigned_int_::deallocate_void___unsigned_int_
push dword [esp + 0x28]
lea ecx, [esp + 0x28]
push dword [esp + 0x30]
call sym.cryptopp.dll_public:_void___thiscall_CryptoPP::AlignedAllocator_unsigned_int_::deallocate_void___unsigned_int_
push dword [esp + 0x4c]
push esi
call sym.cryptopp.dll_public:_void___thiscall_CryptoPP::AllocatorWithCleanup_unsigned_char_::deallocate_void___unsigned_int_
mov eax, edi
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.4295e11e
mov esp, ebp
pop ebp
ret