Function at 0x402868
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
push 5
pop ebx
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x4028c7
push 0x19
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__5__Atomic_variable_did_not_initialize_
push str.Assertion_failure:__s__at__s:_d_n
push 2
pop edi
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push edi
call esi
pop ecx
push eax
call fcn.004075b9
push edi
call esi
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
add esp, 0x1c
int3
xor eax, eax
lea ecx, [ebp - 4]
inc eax
lock xadd dword [ecx], eax
cmp eax, ebx
je 0x4028e5
push 0x1c
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_6___Atomic_increment_did_not_work_
jmp 0x40288c
xor eax, eax
lea ecx, [ebp - 4]
inc eax
lock xadd dword [ecx], eax
cmp eax, 6
je 0x402904
push 0x1d
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_6___Atomic_post_increment_did_not_work_
jmp 0x40288c
mov eax, dword [ebp - 4]
push 7
pop esi
cmp eax, esi
je 0x40294f
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push 0x1e
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_7___Atomic_post_increment_did_not_work_
push str.Assertion_failure:__s__at__s:_d_n
push 2
pop edi
push edi
call esi
pop ecx
push eax
call fcn.004075b9
push edi
call esi
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
add esp, 0x1c
int3
or ecx, 0xffffffff
lea edx, [ebp - 4]
mov eax, ecx
lock xadd dword [edx], eax
cmp eax, esi
je 0x402972
push 0x21
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.__atomic__6__Atomic_decrement_did_not_work_
jmp 0x40288c
lea eax, [ebp - 4]
lock xadd dword [eax], ecx
cmp ecx, 6
je 0x402991
push 0x22
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic____6__Atomic_post_decrement_did_not_work_
jmp 0x40288c
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x4029ab
push 0x23
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__5__Atomic_post_decrement_did_not_work_
jmp 0x40288c
mov ecx, ebx
lea eax, [ebp - 4]
lock xadd dword [eax], ecx
mov eax, dword [ebp - 4]
cmp eax, 0xa
je 0x4029cf
push 0x28
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_10___Atomic__did_not_work_
jmp 0x40288c
cmp ecx, ebx
je 0x4029e6
push 0x29
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_10___Atomic__returned_the_wrong_value_
jmp 0x40288c
push 0xfffffffffffffffd
pop ecx
lea eax, [ebp - 4]
lock xadd dword [eax], ecx
mov eax, dword [ebp - 4]
cmp eax, esi
je 0x402a0a
push 0x2b
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_7___Atomic___did_not_work_
jmp 0x40288c
cmp ecx, 0xa
je 0x402a22
push 0x2c
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_7___Atomic___returned_the_wrong_value_
jmp 0x40288c
mov eax, ebx
lea ecx, [ebp - 4]
xchg dword [ecx], eax
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x402a43
push 0x30
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_5___Atomic_assignment_failed_
jmp 0x40288c
push 2
pop edi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
xor ecx, edi
lock cmpxchg dword [edx], ecx
jne 0x402a4b
mov ecx, eax
mov eax, dword [ebp - 4]
xor ecx, edi
cmp eax, esi
je 0x402a78
push 0x35
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_7___Atomic__did_not_work_
push str.Assertion_failure:__s__at__s:_d_n
jmp 0x402894
cmp ecx, esi
je 0x402a8c
push 0x36
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_7___Atomic__returned_the_wrong_value_
jmp 0x402a6e
push 4
pop esi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
xor ecx, esi
lock cmpxchg dword [edx], ecx
jne 0x402a94
mov ecx, eax
mov eax, dword [ebp - 4]
xor ecx, esi
cmp eax, 3
je 0x402aba
push 0x38
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_3___Atomic__did_not_work_
jmp 0x402a6e
cmp ecx, 3
je 0x402acf
push 0x39
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_3___Atomic__returned_the_wrong_value_
jmp 0x402a6e
push 8
pop esi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
or ecx, esi
lock cmpxchg dword [edx], ecx
jne 0x402ad7
mov ecx, eax
mov eax, dword [ebp - 4]
or ecx, esi
push 0xb
pop esi
cmp eax, esi
je 0x402b02
push 0x3b
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_11___Atomic__did_not_work_
jmp 0x402a6e
cmp ecx, esi
je 0x402b19
push 0x3c
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_11___Atomic__returned_the_wrong_value_
jmp 0x402a6e
push 8
lea edx, [ebp - 4]
pop ebx
mov eax, dword [edx]
mov ecx, eax
or ecx, ebx
lock cmpxchg dword [edx], ecx
jne 0x402b21
mov ecx, eax
push ebx
pop eax
or ecx, eax
mov eax, dword [ebp - 4]
push 5
pop ebx
cmp eax, esi
je 0x402b3f
push 0x3e
jmp 0x402af1
cmp ecx, esi
je 0x402b47
push 0x3f
jmp 0x402b08
push 0xc
pop esi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
and ecx, esi
lock cmpxchg dword [edx], ecx
jne 0x402b4f
mov ecx, eax
mov eax, dword [ebp - 4]
and ecx, esi
push 8
pop edx
cmp eax, edx
je 0x402b7a
push 0x41
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_8___Atomic__did_not_work_
jmp 0x402a6e
cmp ecx, edx
je 0x402b91
push 0x42
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_8___Atomic__returned_the_wrong_value_
jmp 0x402a6e
push 0x1e
pop eax
lea ecx, [ebp - 4]
xchg dword [ecx], eax
push 0x2a
pop ecx
lea eax, [ebp - 4]
xchg dword [eax], ecx
mov eax, dword [ebp - 4]
cmp eax, 0x2a
je 0x402bbc
push 0x47
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_42___Atomic_exchange_did_not_work_
jmp 0x402a6e
cmp ecx, 0x1e
je 0x402bd4
push 0x48
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.result__T_30___Atomic_exchange_returned_the_wrong_value_
jmp 0x402a6e
xor esi, esi
lea ecx, [ebp - 4]
inc esi
mov eax, esi
xchg dword [ecx], eax
and dword [ebp - 8], 0
lea eax, [ebp - 8]
push ebx
push ebx
push edi
push eax
mov eax, ecx
push eax
call fcn.004071ce
add esp, 0x14
test eax, eax
je 0x402c0b
push 0x4d
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str._boolResult__CAS_should_have_returned_false._
jmp 0x402a6e
mov eax, dword [ebp - 4]
cmp eax, esi
je 0x402c25
push 0x4e
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_1___CAS_shouldnt_have_done_anything._
jmp 0x402a6e
push ebx
push ebx
push 0x2a
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], esi
push eax
lea eax, [ebp - 4]
push eax
call fcn.004071ce
add esp, 0x14
test eax, eax
jne 0x402c53
push 0x51
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.boolResult__CAS_should_have_succeeded._
jmp 0x402a6e
mov eax, dword [ebp - 4]
cmp eax, 0x2a
je 0x402c6e
push 0x52
pop ebx
push ebx
push str.c:_builds_moz2_slave_m_in_w32_000000000000000000000_build_src_mfbt_tests_TestAtomics.cpp
push str.atomic__T_42___CAS_should_have_changed_atomics_value._
jmp 0x402a6e
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret