Function at 0x402c75
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
push 5
pop esi
mov dword [ebp - 4], esi
mov eax, dword [ebp - 4]
cmp eax, esi
je 0x402cd4
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, esi
je 0x402cf2
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 0x402c99
xor eax, eax
lea ecx, [ebp - 4]
inc eax
lock xadd dword [ecx], eax
cmp eax, 6
je 0x402d11
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 0x402c99
mov eax, dword [ebp - 4]
push 7
pop ebx
cmp eax, ebx
je 0x402d2e
push 0x1e
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_post_increment_did_not_work_
jmp 0x402c99
or ecx, 0xffffffff
lea edx, [ebp - 4]
mov eax, ecx
lock xadd dword [edx], eax
cmp eax, ebx
je 0x402d51
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 0x402c99
lea eax, [ebp - 4]
lock xadd dword [eax], ecx
cmp ecx, 6
je 0x402d70
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 0x402c99
mov eax, dword [ebp - 4]
cmp eax, esi
je 0x402d8a
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 0x402c99
mov ecx, esi
lea eax, [ebp - 4]
lock xadd dword [eax], ecx
mov eax, dword [ebp - 4]
cmp eax, 0xa
je 0x402dae
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 0x402c99
cmp ecx, esi
je 0x402dc5
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 0x402c99
push 0xfffffffffffffffd
pop ecx
lea eax, [ebp - 4]
lock xadd dword [eax], ecx
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x402de9
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 0x402c99
cmp ecx, 0xa
je 0x402e01
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 0x402c99
mov dword [ebp - 4], esi
mov eax, dword [ebp - 4]
cmp eax, esi
je 0x402e1e
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 0x402c99
push 2
pop edi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
xor ecx, edi
lock cmpxchg dword [edx], ecx
jne 0x402e26
mov ecx, eax
mov eax, dword [ebp - 4]
xor ecx, edi
cmp eax, ebx
je 0x402e53
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 0x402ca1
cmp ecx, ebx
je 0x402e67
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 0x402e49
push 4
pop esi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
xor ecx, esi
lock cmpxchg dword [edx], ecx
jne 0x402e6f
mov ecx, eax
mov eax, dword [ebp - 4]
xor ecx, esi
cmp eax, 3
je 0x402e95
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 0x402e49
cmp ecx, 3
je 0x402eaa
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 0x402e49
push 8
pop ebx
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
or ecx, ebx
lock cmpxchg dword [edx], ecx
jne 0x402eb2
mov ecx, eax
mov eax, dword [ebp - 4]
or ecx, ebx
push 0xb
pop esi
cmp eax, esi
je 0x402edd
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 0x402e49
cmp ecx, esi
je 0x402ef4
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 0x402e49
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
or ecx, ebx
lock cmpxchg dword [edx], ecx
jne 0x402ef9
mov ecx, eax
mov eax, dword [ebp - 4]
or ecx, ebx
cmp eax, esi
je 0x402f12
push 0x3e
jmp 0x402ecc
cmp ecx, esi
je 0x402f1a
push 0x3f
jmp 0x402ee3
push 0xc
pop esi
lea edx, [ebp - 4]
mov eax, dword [edx]
mov ecx, eax
and ecx, esi
lock cmpxchg dword [edx], ecx
jne 0x402f22
mov ecx, eax
mov eax, dword [ebp - 4]
and ecx, esi
cmp eax, ebx
je 0x402f4a
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 0x402e49
cmp ecx, ebx
je 0x402f61
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 0x402e49
push 0x1e
pop ebx
push 0x2a
mov dword [ebp - 4], ebx
lea eax, [ebp - 4]
pop ecx
xchg dword [eax], ecx
mov eax, dword [ebp - 4]
cmp eax, 0x2a
je 0x402f8a
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 0x402e49
cmp ecx, ebx
je 0x402fa1
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 0x402e49
xor esi, esi
lea eax, [ebp - 8]
push esi
push esi
push edi
push eax
xor ebx, ebx
mov dword [ebp - 8], esi
lea eax, [ebp - 4]
inc ebx
push eax
mov dword [ebp - 4], ebx
call fcn.004071ce
add esp, 0x14
test eax, eax
je 0x402fd6
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 0x402e49
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x402ff0
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 0x402e49
push esi
push esi
push 0x2a
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], ebx
push eax
lea eax, [ebp - 4]
push eax
call fcn.004071ce
add esp, 0x14
test eax, eax
jne 0x40301e
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 0x402e49
mov eax, dword [ebp - 4]
cmp eax, 0x2a
je 0x403039
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 0x402e49
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret