Function at 0x403d80
Capabilities:
Get thread local storage value

Disassembly:
jmp 0x4716a0
push 0x254
mov eax, 0x49124c
call fcn.004068a0
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x260], eax
test esi, esi
je 0x471e43
test eax, eax
je 0x471e43
xor eax, eax
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x230], eax
mov byte [ebx], al
mov dword [ebp - 0x220], eax
mov byte [ebp - 0x230], al
push str.PDBSearchpaths
push esi
mov dword [ebp - 4], eax
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x47177c
cmp dword [0x4c8684], eax
jbe 0x471de5
mov eax, dword [0x4c8680]
mov esi, dword [eax]
mov dword [ebp - 0x250], esi
cmp esi, eax
je 0x471d8b
cmp dword [ebp - 0x220], 0
je 0x471743
push 0x3b
lea ecx, [ebp - 0x230]
call fcn.00405380
cmp dword [esi + 0x24], 0x10
lea eax, [esi + 0x10]
jb 0x47174f
mov eax, dword [esi + 0x10]
push dword [esi + 0x20]
lea ecx, [ebp - 0x230]
push eax
call fcn.004031b0
lea ecx, [ebp - 0x250]
call fcn.00406cf0
mov esi, dword [ebp - 0x250]
cmp esi, dword [0x4c8680]
jne 0x47172d
jmp 0x471d8b
push str.StackdumpFile
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x47180c
mov edi, 0x104
push edi
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00486538
push edi
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.00486538
add esp, 0x18
lea eax, [ebp - 0x114]
push edi
push eax
call fcn.004015e0
neg eax
sbb al, al
and byte [ebp - 0x114], al
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x218]
push str._sFrontExceptions__i__i.trc
push eax
call fcn.004081f0
lea eax, [ebp - 0x218]
push eax
call fcn.00486690
add esp, 0x18
push eax
lea eax, [ebp - 0x218]
push eax
jmp 0x471d80
push str.MiniDumpFilename
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x4718cf
xor esi, esi
inc esi
push esi
push str.CreateMiniDump
push str.SoftwareSAPSAPGUI_FrontSAP_Frontend_ServerReleaseDebug
push SysReAllocStringLen
call fcn.00402170
add esp, 0x10
test eax, eax
je 0x471de5
mov edi, 0x104
lea eax, [ebp - 0x218]
push edi
push 0
push eax
call fcn.00486538
push edi
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.00486538
add esp, 0x18
lea eax, [ebp - 0x114]
push edi
push eax
call fcn.004015e0
neg eax
sbb al, al
and byte [ebp - 0x114], al
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x218]
push str._sFrontMiniDump__i__i.dmp
push eax
call fcn.004081f0
lea eax, [ebp - 0x218]
push eax
call fcn.00486690
add esp, 0x18
push eax
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x230]
call fcn.00403870
jmp 0x471d8e
mov edi, str.MiniDumpType
push edi
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471944
xor esi, esi
inc esi
push esi
push str.CreateMiniDump
push str.SoftwareSAPSAPGUI_FrontSAP_Frontend_ServerReleaseDebug
push SysReAllocStringLen
call fcn.00402170
add esp, 0x10
test eax, eax
je 0x471de5
push 0
push edi
push str.SoftwareSAPSAPGUI_FrontSAP_Frontend_ServerReleaseDebug
push SysReAllocStringLen
call fcn.00402170
push eax
lea eax, [ebp - 0x244]
push 0x4a985c
push eax
call fcn.004081f0
lea eax, [ebp - 0x244]
push eax
call fcn.00486690
add esp, 0x20
push eax
lea eax, [ebp - 0x244]
jmp 0x4718be
push str.SendCallstackBack
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471960
mov esi, 0x499bdc
jmp 0x471d77
push str.AppendCallstack
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
je 0x471956
push str.StackdumpHeaderSuffix
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x4719b7
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
lea eax, [ebp - 0x110]
push str.Thread:_0x_X
push eax
call fcn.004081f0
lea eax, [ebp - 0x110]
push eax
call fcn.00486690
add esp, 0x10
push eax
lea eax, [ebp - 0x110]
jmp 0x471806
push str.StackdumpFooter
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471a2f
push dword [0x4c3c9c]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov esi, eax
test esi, esi
je 0x471de5
mov edi, str._nTraces:_n_n
push edi
call fcn.00486690
pop ecx
push eax
push edi
lea ecx, [ebp - 0x230]
call fcn.004031b0
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x471a02
mov eax, dword [esi]
push dword [esi + 0x10]
lea ecx, [ebp - 0x230]
push eax
call fcn.004031b0
mov esi, str._nthe_end._n_n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.004031b0
jmp 0x471d8b
push str.DetailedCallstack
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471a4b
mov esi, 0x498130
jmp 0x471d77
push str.DlgTextAlreadyReported
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471a7d
mov esi, str.Exception___exceptno___has_occured_and_dumped_to_this_file:_n__file___n__dmp_file___n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00403870
mov esi, str._nYou_have_already_reported_this_exception._It_will_be_analyzed_automatically._nRestarting_Saplogon_Sapgui_might_improve_the_situation._n_nPress_Yes__to_kill_this_application__nPress_No__if_you_want_to_try_continuing.
jmp 0x471a16
push str.DlgTextAutoSend
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471ab2
mov esi, str.Exception___exceptno___has_occured_and_dumped_to_this_file:_n__file___n__dmp_file___n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00403870
mov esi, str._nPress_OK_to_automatically_send_an_email_with_all_important_information._n
jmp 0x471a16
push str.DlgTextManualSend
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471ae7
mov esi, str.Exception___exceptno___has_occured_and_dumped_to_this_file:_n__file___n__dmp_file___n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00403870
mov esi, str._nPress_OK_to_prepare_an_email_with_all_important_information._n
jmp 0x471a16
push str.DlgTextNoSend
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471b4e
mov esi, str.Exception___exceptno___has_occured_and_dumped_to_this_file:_n__file___n__dmp_file___n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00403870
mov esi, str._nPress_OK_to_continue_the_application._n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.004031b0
mov esi, str.Press_Cancel_to_end_the_application_including_all_sessions._n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.004031b0
mov esi, str._Press_Ctrl_C_to_copy_this_dialogs_text_exspecially_the_filename_to_the_clipboard_
jmp 0x471a16
push str.DlgTextSendEmailAgain
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471b77
call fcn.00473409
test eax, eax
je 0x471de5
mov esi, str.Your_email_with_crash_information_was_not_sent._n_nIt_is_very_important_to_send_ALL_exception_information__therefore_press_OK_and_retry_sending_the_email.
jmp 0x471d77
push str.DlgTextEmailSent
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471b93
mov esi, str.The_crash_information_has_been_successfully_sent_via_email._Thanks_for_your_help_to_improve_SAPGUIs_quality.
jmp 0x471d77
push str.DlgTextEmailNotSent
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471baf
mov esi, str.The_crash_information_email_was_not_sent._Every_important_data_is_stored_in_this_trace_file:_n__file___n__dmp_file___n
jmp 0x471afe
push str.DlgTextTerminate
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471be4
mov esi, str.Do_you_really_want_to_kill_this_application_INCLUDING_all_open_sessions__n
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00403870
mov esi, str.It_is_better_to_manually_close_as_many_sessions_as_possible_first_
jmp 0x471a16
push str.EmailRecipient
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471c1c
call fcn.00473381
test eax, eax
je 0x471de5
call fcn.00473409
test eax, eax
mov esi, str.SMTP:gui.admin_global.corp.sap
mov ecx, str.SMTP:Please_fill_in_address_later_sap.com
cmove esi, ecx
jmp 0x471d77
push str.EmailOptions
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471c73
call fcn.00473381
sub eax, 0
je 0x471c69
sub eax, 1
je 0x471c5f
sub eax, 1
je 0x471c55
sub eax, 1
jne 0x471d8b
mov esi, str._auto0
jmp 0x471a16
mov esi, str._auto
jmp 0x471a16
mov esi, str._prepare
jmp 0x471a16
mov esi, str._none
jmp 0x471a16
push str.EmailSubject
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471d3a
mov word [ebp - 0x24c], ax
mov word [ebp - 0x254], ax
mov word [ebp - 0x258], ax
mov word [ebp - 0x250], ax
lea eax, [ebp - 0x250]
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x24c]
push eax
call fcn.0047340e
movzx eax, word [ebp - 0x24c]
xor edx, edx
push 0xa
pop ecx
div ecx
mov edi, 0x104
movzx esi, ax
lea eax, [ebp - 0x218]
push edi
push 0
push eax
mov word [ebp - 0x24c], si
call fcn.00486538
movzx eax, word [ebp - 0x254]
movzx ecx, word [ebp - 0x258]
push eax
push ecx
push dword [0x4c3ca0]
push dword [0x4c3ca4]
push eax
push ecx
push esi
push str.Windows_GUI__i._i._i__s_sException_____code_____with_ID____addr_____occurred__PL_i__COMP_i_
push 0xffffffffffffffff
lea eax, [ebp - 0x218]
push edi
push eax
call fcn.00402bb0
add esp, 0x48
lea eax, [ebp - 0x218]
push eax
call fcn.00486690
pop ecx
jmp 0x4717ff
push str.EmailBody
push esi
call dword [0x4c99e8]
pop ecx
pop ecx
test eax, eax
jne 0x471de5
call fcn.00473381
sub eax, 1
je 0x471d64
sub eax, 1
je 0x471d64
sub eax, 1
jne 0x471d8b
call fcn.00473409
mov esi, str.Hello_colleague__n_nyour_GUI_has_produced_a_serious_exception._Please_help_us_to_improve_SAPGUIs_quality__by_performing_the_following_small_steps:_n_n1._Send_this_email._Our_analyze_tool_will_send_you_a_reply_within_the_next_hour__telling_you_whether_the_problem_is_solved_or_we_need_a_BCP_internal_incident_to_go_on_with_the_investigation._This_email_is_NOT_sufficient_to_correct_this_bug__n_n2._Take_some_notes__if_possible__how_to_reproduce_this_crash._n_n3._Close_all_sessions_except_for_the_one_blocked_by_the__An_exception_has_occurred__dialog._n_n4._Press__Cancel__on_the__An_exception_has_occurred__dialog._This_kills_SAP_Logon_and_ALL_sessions._n_n5._Create_an_internal_incident_in_BCP_on_component_BC_FES_GUI_containing_a_detailed_description_how_to_reproduce_this_exception__if_the_automatic_reply_tells_you_to_do_so._n_nThanks_for_your_help__nthe_SAPGUI_team_n
test eax, eax
jne 0x471d77
mov esi, str.Please_search_this_note_for_this_keyword___addr__:_n_n_t0499555_tExceptions_in_SAPGUI_for_Windows_n_nIf_the_keyword_isnt_listed_in_this_note__please_open_a_call_on_component_BC_FES_GUI_with_a_description_how_to_reproduce_this_bug._Furthermore_save_this_email_and_wait_until_the_SAPGUI_support_gives_you_an_email_address_to_send_it_to._n_nMeanwhile__please_apply_note_520688_to_optimize_the_trace_result.
push esi
call fcn.00486690
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00403870
xor esi, esi
inc esi
mov ecx, dword [ebp - 0x220]
mov edx, dword [ebp - 0x25c]
mov edi, dword [ebp - 0x260]
lea eax, [ecx + 1]
mov dword [edx], eax
lea eax, [edi - 1]
cmp ecx, eax
cmovb eax, ecx
lea ecx, [ebp - 0x230]
push eax
push 0
lea eax, [ebp - 0x248]
push eax
call fcn.00406590
cmp dword [eax + 0x14], 0x10
jb 0x471dca
mov eax, dword [eax]
push eax
push ebx
call fcn.0048668a
pop ecx
pop ecx
lea ecx, [ebp - 0x248]
call fcn.004031c0
mov byte [ebx + edi - 1], 0
jmp 0x471df0
mov edx, dword [ebp - 0x25c]
and dword [edx], 0
xor esi, esi
mov eax, dword [ebp - 0x21c]
cmp eax, 0x10
jb 0x471e3f
mov ecx, dword [ebp - 0x230]
inc eax
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x250], ecx
cmp eax, 0x1000
jb 0x471e36
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x250]
push eax
call fcn.00404ee0
mov eax, dword [ebp - 0x25c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x250]
push eax
push ecx
call fcn.00401e50
pop ecx
pop ecx
mov eax, esi
jmp 0x471e45
xor eax, eax
call fcn.004084e0
ret 0x10