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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x80
mov edi, dword [ebp + 0x10]
mov eax, dword [0x5c7040]
xor eax, ebp
mov dword [esp + 0x78], eax
xor ebx, ebx
dec ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
cmp edi, 1
je 0x433ccc
test edi, edi
je 0x4343cc
lea ecx, [esp + 0x10]
call fcn.004ba390
jmp 0x433cdd
mov edi, edx
or edi, 7
inc edi
push edi
call fcn.004f507e
mov edx, dword [ebp + 0xc]
add esp, 4
mov esi, eax
mov dword [esp + 0x34], eax
or edi, 0x80000000
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], edx
jmp 0x433e1a
mov esi, edx
or esi, 7
inc esi
push esi
mov edi, ecx
call fcn.004f507e
mov ecx, edi
mov edx, dword [ebp + 0xc]
add esp, 4
mov dword [esp + 0x34], eax
or esi, 0x80000000
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], edx
jmp 0x433d9a
call fcn.004bcc90
lea edx, [esp + 0x10]
mov ecx, eax
push edx
call fcn.004529c0
call fcn.00434630
mov esi, eax
pxor xmm0, xmm0
lea eax, [esp + 0x40]
movq qword [eax], xmm0
mov dword [eax + 8], 0
mov ecx, esi
push eax
call fcn.004347f0
test al, al
je 0x433e84
cmp edi, 1
ja 0x433d3c
lea edi, [esp + 0x68]
mov ecx, edi
call fcn.00420eb0
mov ebx, str.OPERA_ENABLE_CRASH_LOG_UPLOAD
push ebx
call fcn.00510cc0
add esp, 4
mov ecx, edi
push 1
push eax
push ebx
call fcn.00420f20
mov ebx, eax
mov ecx, edi
call fcn.00420ed0
mov byte [esi + 4], bl
lea ebx, [esp + 0x68]
xor eax, eax
dec eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
call fcn.004bcc90
mov edi, eax
mov eax, str.user_data_dir
push eax
call fcn.00510cc0
add esp, 4
mov ecx, edi
push eax
mov eax, str.user_data_dir
push eax
push ebx
call fcn.004bcdf0
push esi
call fcn.00433b50
add esp, 4
mov edx, dword [ebp + 0xc]
cmp edx, 0x7ffffff8
jae 0x434612
mov ecx, dword [ebp + 8]
cmp edx, 0xa
ja 0x433c9f
lea eax, [esp + 0x34]
mov byte [eax + 0xb], dl
xor ebx, ebx
dec ebx
lea esi, [eax + edx]
cmp eax, ecx
mov edi, ecx
seta cl
cmp esi, edi
mov edi, edx
setbe dl
or dl, cl
je 0x434608
test edi, edi
je 0x433dc7
push edi
push dword [ebp + 8]
push eax
call fcn.004f8b10
add esp, 0xc
xor eax, eax
cmp dword [ebp + 0x10], 2
setb al
mov byte [esi], 0
lea ecx, [esp + 0x10]
lea esi, [esp + 0x34]
push ecx
lea ecx, [esp + 0x6c]
push ecx
push esi
push eax
call fcn.0045fb00
add esp, 0x10
cmp byte [esi + 0xb], 0
jns 0x433dfd
push dword [esp + 0x34]
call fcn.004f50ae
add esp, 4
call fcn.0045fbe0
mov edx, dword [ebp + 0xc]
test edx, edx
je 0x434596
cmp edx, 0xa
ja 0x433c74
mov byte [esp + 0x3f], dl
lea edi, [esi + edx]
mov eax, dword [ebp + 8]
cmp esi, eax
seta ch
cmp edi, eax
setbe cl
or cl, ch
je 0x434608
push edx
push eax
push esi
call fcn.004f8b10
add esp, 0xc
mov byte [edi], 0
lea esi, [esp + 0x34]
push esi
call fcn.0045ff10
add esp, 4
cmp byte [esi + 0xb], 0
jns 0x433e5f
push dword [esp + 0x34]
call fcn.004f50ae
add esp, 4
call fcn.00458be0
push 0x527e50
call fcn.0043a930
add esp, 4
cmp byte [esp + 0x73], 0
jns 0x433e84
push dword [esp + 0x68]
call fcn.004f50ae
add esp, 4
cmp byte [esp + 0x4b], 0
jns 0x433e97
push dword [esp + 0x40]
call fcn.004f50ae
add esp, 4
lea edi, [esp + 0x40]
push edi
call fcn.00418000
add esp, 4
movsx eax, byte [esp + 0x4b]
test eax, eax
jns 0x433eb5
mov eax, dword [esp + 0x44]
mov edi, dword [esp + 0x40]
test eax, eax
js 0x4343b4
sete cl
test edi, edi
setne dl
or dl, cl
je 0x4343ad
cmp eax, 0x10
mov esi, 0x10
cmovb esi, eax
test eax, eax
je 0x433eeb
push esi
push edi
push 0x5c7df8
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c7de4
push esi
call fcn.004c0c10
cmp byte [esp + 0x4b], 0
jns 0x433f09
push dword [esp + 0x40]
call fcn.004f50ae
add esp, 4
lea esi, [esp + 0x40]
push esi
call fcn.004180e0
add esp, 4
movsx eax, byte [esi + 0xb]
test eax, eax
jns 0x433f26
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
test eax, eax
js 0x4343b4
sete cl
test esi, esi
setne dl
or dl, cl
je 0x4343ad
cmp eax, 0x10
mov edi, 0x10
cmovb edi, eax
test eax, eax
je 0x433f5c
push edi
push esi
push 0x5c7e1c
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c7e08
push edi
call fcn.004c0c10
cmp byte [esp + 0x4b], 0
jns 0x433f7a
push dword [esp + 0x40]
call fcn.004f50ae
add esp, 4
lea edi, [esp + 0x68]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
call fcn.004bcc90
mov ecx, eax
push edi
call fcn.004529c0
push edi
call fcn.00418180
add esp, 4
mov esi, eax
mov ebx, 0x10
push ebx
push eax
push 0x5c7e40
call fcn.00510dd0
add esp, 0xc
push esi
call fcn.00510cc0
add esp, 4
cmp eax, 0x10
cmovb ebx, eax
mov ecx, 0x5c7e2c
push ebx
call fcn.004c0c10
lea esi, [esp + 0x40]
push 0x1ebcc7
push esi
call fcn.004b26a0
add esp, 8
movsx eax, byte [esi + 0xb]
test eax, eax
jns 0x433fee
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
test eax, eax
js 0x4343b4
sete cl
test esi, esi
setne dl
or dl, cl
je 0x4343ad
cmp eax, 0x10
mov ebx, 0x10
cmovb ebx, eax
test eax, eax
je 0x434024
push ebx
push esi
push 0x5c7e64
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c7e50
push ebx
call fcn.004c0c10
cmp byte [esp + 0x4b], 0
jns 0x434042
push dword [esp + 0x40]
call fcn.004f50ae
add esp, 4
lea esi, [esp + 0x40]
xor ebx, ebx
dec ebx
mov dword [esi + 0x24], ebx
mov dword [esi + 0x20], ebx
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
mov ecx, esi
call fcn.004517d0
push esi
push edi
call fcn.004432b0
add esp, 8
test al, al
je 0x434172
mov esi, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov eax, esi
or eax, ecx
je 0x4340ed
mov eax, esi
add eax, 1
mov edi, ecx
adc edi, 0x80000000
mov edx, SysReAllocString
cmp eax, 2
sbb edi, 0
jae 0x4340ae
lea eax, [edx - 1]
test ecx, ecx
cmovns edx, eax
sar ecx, 0x1f
not ecx
mov eax, ecx
jmp 0x4340f1
xor eax, eax
xor edi, edi
add esi, 0xb779c000
adc ecx, 0xffd6a169
cmovo ecx, edx
cmovo esi, edi
mov edi, esi
add edi, 1
mov ebx, SysReAllocString
adc ebx, ecx
cmp edi, 2
sbb ebx, 0
mov ebx, 0xffffffff
jb 0x4340f1
push 0
push 0x3e8
push ecx
push esi
call fcn.0051a300
jmp 0x4340f1
xor eax, eax
xor edx, edx
push 0
push 0x3e8
push edx
push eax
call fcn.0051a300
lea esi, [esp + 0x34]
push edx
push eax
push esi
call fcn.004b2920
add esp, 0xc
movsx eax, byte [esi + 0xb]
test eax, eax
jns 0x43411e
mov eax, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
test eax, eax
js 0x4343b4
sete cl
test esi, esi
setne dl
or dl, cl
je 0x4343ad
cmp eax, 0x10
mov edi, 0x10
cmovb edi, eax
test eax, eax
je 0x434154
push edi
push esi
push 0x5c7e88
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c7e74
push edi
call fcn.004c0c10
cmp byte [esp + 0x3f], 0
jns 0x434172
push dword [esp + 0x34]
call fcn.004f50ae
add esp, 4
lea edi, [esp + 0x34]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
lea esi, [esp + 0x28]
mov ecx, esi
call fcn.00420eb0
mov ebx, str.OPERA_CRASH_EMAIL
push ebx
call fcn.00510cc0
add esp, 4
mov ecx, esi
push eax
push ebx
push edi
call fcn.00420ef0
mov ecx, esi
call fcn.00420ed0
movsx ecx, byte [edi + 0xb]
mov eax, ecx
test ecx, ecx
jns 0x4341b6
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4341f9
test cl, cl
jns 0x4341c2
mov edi, dword [esp + 0x34]
test eax, eax
js 0x4343b4
test edi, edi
je 0x4343ad
mov ebx, 0x100
cmp eax, 0x100
cmovb ebx, eax
push ebx
push edi
push 0x5c7eac
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c7e98
push ebx
call fcn.004c0c10
xor eax, eax
dec eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
lea edi, [esp + 0x1c]
mov ecx, edi
call fcn.00420eb0
mov ebx, str.OPERA_CRASH_REPORTER_OPAUTO_TEST
push ebx
call fcn.00510cc0
add esp, 4
mov ecx, edi
push eax
push ebx
push esi
call fcn.00420ef0
mov ecx, edi
call fcn.00420ed0
movsx ecx, byte [esp + 0x33]
mov eax, ecx
test ecx, ecx
jns 0x434241
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x43430f
test cl, cl
jns 0x434251
mov esi, dword [esp + 0x28]
test eax, eax
js 0x4343b4
test esi, esi
je 0x4343ad
mov edi, 0x100
cmp eax, 0x100
cmovb edi, eax
push edi
push esi
push 0x5c7fc0
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c7fac
push edi
call fcn.004c0c10
mov esi, 0x10
mov edi, str.OpAuto
push esi
push edi
push 0x5c80d4
call fcn.00510dd0
add esp, 0xc
push edi
call fcn.00510cc0
add esp, 4
cmp eax, 0x10
cmovb esi, eax
mov ecx, 0x5c80c0
push esi
call fcn.004c0c10
cmp byte [esp + 0x33], 0
jns 0x4342ce
push dword [esp + 0x28]
call fcn.004f50ae
add esp, 4
cmp byte [esp + 0x3f], 0
jns 0x4342e1
push dword [esp + 0x34]
call fcn.004f50ae
add esp, 4
lea ecx, [esp + 0x40]
call fcn.00411550
lea ecx, [esp + 0x68]
call fcn.004ba510
lea ecx, [esp + 0x10]
call fcn.004ba510
mov ecx, dword [esp + 0x78]
xor ecx, ebp
call fcn.004f5620
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
dec eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
lea esi, [esp + 0x74]
mov ecx, esi
call fcn.00420eb0
mov ebx, str.OPERA_CRASH_ORIGIN
push ebx
call fcn.00510cc0
add esp, 4
mov ecx, esi
push eax
push ebx
push edi
call fcn.00420ef0
mov ecx, esi
call fcn.00420ed0
movsx ecx, byte [esp + 0x27]
mov eax, ecx
test ecx, ecx
jns 0x434357
mov eax, dword [esp + 0x20]
test eax, eax
je 0x434394
test cl, cl
jns 0x434363
mov edi, dword [esp + 0x1c]
test eax, eax
js 0x4343b4
test edi, edi
je 0x4343ad
cmp eax, 0x10
mov esi, 0x10
cmovb esi, eax
push esi
push edi
push 0x5c80f8
call fcn.004f8b10
add esp, 0xc
mov ecx, 0x5c80e4
push esi
call fcn.004c0c10
mov cl, byte [esp + 0x27]
test cl, cl
jns 0x4342bb
push dword [esp + 0x1c]
call fcn.004f50ae
add esp, 4
jmp 0x4342bb
push str....._third_partylibc_srcinclude_string_view:320:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
jmp 0x4343b9
push str....._third_partylibc_srcinclude_string_view:318:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
push 0x59f83f
call fcn.00526860
lea eax, [esp + 0x34]
mov byte [eax + 0xb], bl
jmp 0x43443c
lea esi, [esp + 0x40]
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
call fcn.004bcc90
mov ecx, eax
push esi
call fcn.004529c0
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
call fcn.004201a0
test eax, eax
je 0x43461b
mov esi, eax
push eax
call fcn.00510cc0
add esp, 4
cmp eax, 0x7ffffff8
jae 0x434612
mov ebx, eax
cmp eax, 0xa
jbe 0x4343c3
mov edi, ebx
or edi, 7
inc edi
push edi
call fcn.004f507e
add esp, 4
mov dword [esp + 0x34], eax
or edi, 0x80000000
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebx
lea edi, [eax + ebx]
cmp eax, esi
seta cl
cmp edi, esi
setbe dl
or dl, cl
je 0x434608
test ebx, ebx
je 0x434460
push ebx
push esi
push eax
call fcn.004f8b10
add esp, 0xc
mov byte [edi], 0
lea esi, [esp + 0x34]
mov ecx, esi
push 0x12
push str._crashreporter.exe
call fcn.004a4720
mov ecx, dword [eax + 8]
mov dword [esp + 0x70], ecx
movq xmm0, qword [eax]
movq qword [esp + 0x68], xmm0
pxor xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
cmp byte [esi + 0xb], 0
jns 0x4344a7
push dword [esp + 0x34]
call fcn.004f50ae
add esp, 4
xor eax, eax
dec eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x40]
push esi
call fcn.004bab80
lea ebx, [esp + 0x68]
movsx eax, byte [ebx + 0xb]
test eax, eax
cmovs eax, dword [ebx + 4]
mov edx, dword [ebx]
cmovns edx, ebx
test eax, eax
js 0x4343b4
sete cl
test edx, edx
setne ch
or ch, cl
je 0x4343ad
lea edi, [esp + 0x10]
lea esi, [esp + 0x34]
mov ecx, esi
push eax
push edx
push edi
call fcn.004513a0
mov ecx, esi
call fcn.004ba510
push edi
call fcn.004425e0
add esp, 4
test al, al
mov edi, dword [ebp + 0x10]
jne 0x434569
lea eax, [esp + 0x40]
push eax
push 4
call fcn.004447f0
add esp, 8
movsx eax, byte [esp + 0x73]
test eax, eax
cmovs eax, dword [esp + 0x6c]
cmovs ebx, dword [esp + 0x68]
test eax, eax
js 0x4343b4
sete cl
test ebx, ebx
setne dl
or dl, cl
je 0x4343ad
lea ecx, [esp + 0x40]
push eax
push ebx
push esi
call fcn.004513a0
lea ecx, [esp + 0x10]
push esi
call fcn.004ba590
mov ecx, esi
call fcn.004ba510
cmp byte [esp + 0x73], 0
jns 0x43457c
push dword [esp + 0x68]
call fcn.004f50ae
add esp, 4
lea ecx, [esp + 0x40]
call fcn.004ba510
xor ebx, ebx
dec ebx
jmp 0x433cdd
lea eax, [esp + 0x34]
mov byte [eax + 0xb], cl
jmp 0x4345da
push 0x5a0b31
call fcn.00510cc0
add esp, 4
cmp eax, 0x7ffffff8
jae 0x434612
mov ecx, eax
cmp eax, 0xa
mov dword [esp + 0xc], eax
jbe 0x43458d
mov esi, ecx
or esi, 7
inc esi
push esi
call fcn.004f507e
mov ecx, dword [esp + 0x10]
add esp, 4
mov dword [esp + 0x34], eax
or esi, 0x80000000
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ecx
lea edi, [eax + ecx]
mov ecx, 0x5a0b31
cmp eax, ecx
seta dl
cmp edi, ecx
setbe cl
or cl, dl
je 0x434608
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x433e3d
push ecx
push 0x5a0b31
push eax
jmp 0x433e35
push str....._third_partylibc_srcinclude__stringchar_traits.h:145:_assertion__std::__is_pointer_in_range___s1____s1____n____s2__failed:_char_traits::copy:_source_and_destination_ranges_overlap_n
jmp 0x4343b9
lea ecx, [esp + 0x34]
call fcn.00525850
push str....._third_partylibc_srcinclude_string:973:_assertion___s___nullptr_failed:_basic_string_const_char__detected_nullptr_n
jmp 0x4343b9