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

Disassembly:
push esi
push edi
mov edi, eax
mov eax, dword [0x448584]
push edi
mov esi, ecx
push esi
push str.MaiHandleGUIdata___i___s__n
push 2
push eax
call fcn.004380f8
add esp, 0x14
cmp byte [edi], 0x20
jne 0x4238ea
add edi, 1
cmp byte [edi], 0x20
je 0x4238e2
mov eax, esi
sub eax, 0xa
je 0x423968
sub eax, 1
je 0x423925
sub eax, 1
jne 0x4239ef
push 0x14
call fcn.00404330
add esp, 4
test eax, eax
je 0x423933
push edi
push eax
mov eax, dword [0x447928]
mov eax, dword [eax + 0x80]
call fcn.00423840
add esp, 8
pop edi
pop esi
ret
push 8
call fcn.00404330
add esp, 4
test eax, eax
jne 0x423953
mov ecx, dword [0x448a6c]
mov edx, dword [ecx]
mov eax, dword [0x447928]
mov ecx, dword [eax + 0xc]
push edx
movzx edx, word [ecx]
push edx
call sub.gnwie.dll_Werrorbox
add esp, 8
pop edi
pop esi
ret
push edi
push eax
mov eax, dword [0x447928]
mov eax, dword [eax + 0x7c]
call fcn.00423840
add esp, 8
pop edi
pop esi
ret
push 0x18
call fcn.00404330
mov esi, eax
mov eax, dword [0x447928]
add esp, 4
test esi, esi
jne 0x423998
mov ecx, dword [0x448a6c]
mov edx, dword [ecx]
mov ecx, dword [eax + 0xc]
push edx
movzx edx, word [ecx]
push edx
call sub.gnwie.dll_Werrorbox
add esp, 8
pop edi
pop esi
ret
mov eax, dword [eax + 0x78]
push edi
push esi
call fcn.00423840
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0xc]
mov edi, dword [sym.imp.MSVCR80.dll_atoi]
add esp, 8
push ecx
push edx
call edi
mov ecx, dword [esi + 8]
add esp, 4
push eax
mov eax, dword [esi + 0x10]
push eax
push ecx
call edi
mov edx, dword [esi + 4]
add esp, 4
push eax
push edx
call edi
add esp, 4
push eax
mov eax, dword [esi]
push eax
call edi
mov ecx, dword [0x447928]
mov edx, dword [ecx]
add esp, 4
push eax
movzx eax, word [edx + 0x14]
push eax
call sub.gnwie.dll_ACTBARappendforCUA
add esp, 0x1c
pop edi
pop esi
ret
push ebx
push edi
mov ebx, eax
mov eax, dword [0x448584]
push ebx
push str.MaiSwitchData___s__n
push 2
push eax
call fcn.004380f8
mov al, byte [ebx]
add esp, 0x10
cmp al, 0x2b
je 0x423f4f
cmp al, 0x2f
push esi
je 0x423b9c
cmp al, 0x3a
jne case.default.0x423a45
mov ecx, dword [0x447928]
mov eax, dword [ecx + 0xe0]
add eax, 0xffffffff
cmp eax, 0xb
ja case.default.0x423a45
jmp dword [eax*4 + 0x423f70]
lea edx, [ebx + 6]
push edx
mov ecx, ebx
call fcn.00420130
push eax
mov eax, dword [0x447928]
mov ecx, dword [eax + 0x14]
push ecx
call fcn.0042ffe0
add esp, 0xc
pop esi
pop edi
pop ebx
ret
mov ecx, ebx
lea esi, [ebx + 6]
call fcn.00420130
mov edi, eax
mov eax, esi
call fcn.00422f30
pop esi
pop edi
pop ebx
ret
lea edx, [ebx + 6]
push edx
mov ecx, ebx
call fcn.00420130
push eax
call fcn.0041a3f0
add esp, 8
pop esi
pop edi
pop ebx
ret
lea eax, [ebx + 6]
push eax
mov ecx, ebx
call fcn.00420130
push eax
call fcn.004281b0
add esp, 8
test al, al
jne case.default.0x423a45
mov ecx, dword [0x447928]
pop esi
pop edi
mov dword [ecx + 0xe0], 0
pop ebx
ret
lea edx, [ebx + 6]
push edx
mov ecx, ebx
call fcn.00420130
push eax
call fcn.0042a720
add esp, 8
test al, al
jne case.default.0x423a45
mov eax, dword [0x447928]
pop esi
pop edi
mov dword [eax + 0xe0], 0
pop ebx
ret
lea ecx, [ebx + 6]
push ecx
mov ecx, ebx
call fcn.00420130
push eax
call fcn.00413460
add esp, 8
test al, al
jne case.default.0x423a45
mov edx, dword [0x447928]
pop esi
pop edi
mov dword [edx + 0xe0], 0
pop ebx
ret
mov ecx, ebx
lea edi, [ebx + 6]
call fcn.00420130
call fcn.00423620
pop esi
pop edi
pop ebx
ret
mov ecx, ebx
call fcn.00420130
cmp eax, 0x6c
jne case.default.0x423a45
add ebx, 6
push ebx
call fcn.00420190
mov ecx, dword [0x447928]
add esp, 4
pop esi
pop edi
mov dword [ecx + 0x28], eax
pop ebx
ret
lea edx, [ebx + 6]
push edx
mov ecx, ebx
call fcn.00420130
push eax
mov eax, dword [0x447928]
mov ecx, dword [eax + 0x18]
push ecx
call fcn.00430f10
add esp, 0xc
pop esi
pop edi
pop ebx
ret
add ebx, 1
push ebx
call fcn.00420190
mov edx, dword [0x447928]
mov ecx, dword [edx + 0xe0]
add esp, 4
pop esi
pop edi
pop ebx
jmp 0x4238c0
push 5
lea esi, [ebx + 1]
push str._HIER
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423c4d
mov ecx, dword [0x447928]
mov eax, dword [ecx + 0x14]
test eax, eax
lea esi, [ecx + 0x14]
je 0x423bd3
push eax
call fcn.0042ff50
add esp, 4
jmp 0x423bd8
call fcn.0042ffa0
test eax, eax
mov dword [esi], eax
jne 0x423bfc
mov eax, dword [0x448a68]
mov ecx, dword [eax + 8]
mov edx, dword [0x447928]
mov eax, dword [edx + 0xc]
push ecx
movzx ecx, word [eax]
push ecx
call sub.gnwie.dll_Wfatalerror
add esp, 8
mov edx, dword [0x447928]
mov eax, dword [edx + 0x14]
push 0
push 0
push 0x40
push eax
call fcn.00407c10
mov eax, dword [0x447928]
mov ecx, dword [eax + 4]
add esp, 0x10
cmp dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
je 0x423c3b
or dword [ecx + 0x28], 0x10
pop esi
pop edi
mov dword [eax + 0xe0], 1
pop ebx
ret
or dword [ecx + 0x28], 0xffffffef
pop esi
pop edi
mov dword [eax + 0xe0], 0
pop ebx
ret
push 5
push str._OPTS
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423c76
mov ecx, dword [0x447928]
pop esi
pop edi
mov dword [ecx + 0xe0], 2
pop ebx
ret
push 5
push str._PRIN
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423c9f
mov edx, dword [0x447928]
pop esi
pop edi
mov dword [edx + 0xe0], 3
pop ebx
ret
push 5
push str._OBJC
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423ceb
mov eax, dword [0x447928]
cmp dword [eax + 0x14], 0
jne 0x423cdd
mov ecx, dword [0x448a68]
mov edx, dword [ecx + 8]
mov eax, dword [eax + 0xc]
movzx ecx, word [eax]
push edx
push ecx
call sub.gnwie.dll_Wfatalerror
mov eax, dword [0x447928]
add esp, 8
pop esi
pop edi
mov dword [eax + 0xe0], 4
pop ebx
ret
push 5
push str._RULE
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423d14
mov edx, dword [0x447928]
pop esi
pop edi
mov dword [edx + 0xe0], 5
pop ebx
ret
push 5
push str._MENU
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423d73
call fcn.004143b0
test al, al
mov ecx, dword [0x447928]
mov byte [ecx + 0x1c5], al
jne 0x423dbb
mov eax, dword [0x448a6c]
mov edx, dword [eax + 0x10]
mov eax, dword [ecx + 0xc]
movzx ecx, word [eax]
push edx
push ecx
call sub.gnwie.dll_Werrorbox
mov ecx, dword [0x447928]
mov dl, byte [ecx + 0x1c5]
add esp, 8
neg dl
pop esi
pop edi
pop ebx
sbb edx, edx
and edx, 6
mov dword [ecx + 0xe0], edx
ret
push 5
push str._ACTB
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423dd2
call fcn.00414470
test al, al
mov ecx, dword [0x447928]
mov byte [ecx + 0x1c5], al
jne 0x423dbb
mov eax, dword [0x448a6c]
mov edx, dword [eax + 0x10]
mov eax, dword [ecx + 0xc]
movzx ecx, word [eax]
push edx
push ecx
call sub.gnwie.dll_Werrorbox
mov ecx, dword [0x447928]
add esp, 8
mov dl, byte [ecx + 0x1c5]
neg dl
pop esi
pop edi
pop ebx
sbb edx, edx
and edx, 6
mov dword [ecx + 0xe0], edx
ret
push 5
push str._TEXT
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423e4e
mov ecx, dword [0x447928]
cmp dword [ecx + 0x24], 0
jne 0x423e30
push 8
call fcn.00404330
mov ecx, dword [0x447928]
add esp, 4
test eax, eax
mov dword [ecx + 0x24], eax
je 0x423e13
xor edx, edx
mov dword [eax], edx
mov dword [eax + 4], edx
jmp 0x423e30
mov eax, dword [0x448a68]
mov edx, dword [eax]
mov eax, dword [ecx + 0xc]
movzx ecx, word [eax]
push edx
push ecx
call sub.gnwie.dll_Wfatalerror
mov ecx, dword [0x447928]
add esp, 8
mov edx, dword [ecx + 0x24]
neg edx
pop esi
sbb edx, edx
and edx, 7
pop edi
mov dword [ecx + 0xe4], 0
mov dword [ecx + 0xe0], edx
pop ebx
ret
push 5
push str._ANSW
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423e76
mov eax, dword [0x447928]
pop esi
pop edi
mov dword [eax + 0xe0], 8
pop ebx
ret
push 5
push str._VIEW
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423ebe
mov ecx, dword [0x447928]
mov edx, dword [ecx]
movzx eax, word [edx + 0x12]
push 0
push 0
push eax
call fcn.004350e0
mov ecx, dword [0x447928]
add esp, 0xc
mov dword [ecx + 0x18], eax
neg eax
pop esi
sbb eax, eax
and eax, 9
pop edi
mov dword [ecx + 0xe0], eax
pop ebx
ret
push 7
lea esi, [ebx + 2]
push str._CUABAR
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423efa
mov eax, dword [0x447928]
mov ecx, dword [eax]
mov dword [eax + 0xe0], 0xa
movzx edx, word [ecx + 0x14]
push 0
push edx
call sub.gnwie.dll_ACTBARresetforCUA
add esp, 8
pop esi
pop edi
pop ebx
ret
push 8
push str._CUATEXT
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne 0x423f22
mov eax, dword [0x447928]
pop esi
pop edi
mov dword [eax + 0xe0], 0xb
pop ebx
ret
push 8
push str._CUAHELP
push esi
call fcn.00404370
add esp, 0xc
test ax, ax
jne case.default.0x423a45
mov ecx, dword [0x447928]
pop esi
pop edi
mov dword [ecx + 0xe0], 0xc
pop ebx
ret
add ebx, 1
push ebx
call fcn.00420190
mov edx, dword [0x447928]
mov edi, dword [edx + 0xe0]
add esp, 4
call fcn.004235e0
pop edi
pop ebx
ret
mov eax, dword [0x448584]
push ebx
mov ebx, dword [esp + 8]
push esi
mov esi, dword [esp + 0x14]
push edi
mov edi, dword [esp + 0x14]
push esi
push edi
push ebx
push str.MaiComProc___s___lu___i__n
push 2
push eax
call fcn.004380f8
add esp, 0x18
cmp esi, 4
ja case.0x425d20.3
jmp dword [esi*4 + 0x426134]
test edi, edi
jne case.0x425d20.3
call fcn.004202d0
cmp eax, 3
jne 0x425d41
pop edi
pop esi
pop ebx
jmp fcn.00425590
push 0
push 0
call fcn.00420200
add esp, 8
pop edi
pop esi
pop ebx
ret
mov ecx, dword [0x447928]
mov edx, dword [ecx + 0xc]
movzx eax, word [edx]
push 0
push 2
push eax
call sub.gnwie.dll_Wsetmouseshape
mov ecx, dword [0x447928]
mov eax, dword [ecx + 0x4c]
add esp, 0xc
test eax, eax
je 0x425d92
push 0
push 0
push 1
push eax
call fcn.0043872c
mov edx, dword [0x447928]
add esp, 0x10
mov dword [edx + 0xdc], eax
mov eax, dword [0x44891c]
mov ecx, dword [eax + 0x20]
push ecx
push 0
call fcn.00420200
mov edx, dword [0x447928]
mov eax, dword [edx + 0x28]
add esp, 8
test eax, eax
je case.0x425d20.0
push eax
call fcn.00404350
mov eax, dword [0x447928]
add esp, 4
mov dword [eax + 0x28], 0
mov ecx, dword [0x447928]
cmp dword [ecx + 0xdc], 0
je 0x425df5
push ebx
call fcn.0040ad90
movzx edx, ax
mov eax, dword [0x447928]
mov ecx, dword [eax + 0xdc]
push edx
push ebx
push ecx
call fcn.00438937
add esp, 0x10
pop edi
pop esi
mov eax, ebx
pop ebx
jmp 0x423a00
mov eax, dword [0x447928]
mov ecx, dword [eax + 0xdc]
test ecx, ecx
je 0x425e1c
push ecx
call fcn.00438974
mov eax, dword [0x447928]
add esp, 4
mov edx, dword [eax + 4]
test byte [edx + 0x28], 0x10
je 0x425ef1
cmp dword [eax + 0x14], 0
jne 0x425e4d
mov ecx, dword [0x448a68]
mov edx, dword [ecx + 8]
mov eax, dword [eax + 0xc]
movzx ecx, word [eax]
push edx
push ecx
call sub.gnwie.dll_Wfatalerror
mov eax, dword [0x447928]
add esp, 8
mov edx, dword [eax + 0x14]
push 0
push 0
push 0x26
push edx
call fcn.00407c10
add esp, 0x10
test eax, eax
jne 0x425e81
mov eax, dword [0x448a68]
mov ecx, dword [eax + 0x10]
mov edx, dword [0x447928]
mov eax, dword [edx + 0xc]
push ecx
movzx ecx, word [eax]
push ecx
call sub.gnwie.dll_Wfatalerror
add esp, 8
mov eax, dword [0x447928]
cmp dword [eax + 0x18], 0
jne 0x425ea9
mov edx, dword [eax]
movzx eax, word [edx + 0x12]
push 0
push 1
push eax
call fcn.004350e0
add esp, 0xc
call fcn.00430e40
mov eax, dword [0x447928]
mov ecx, dword [eax + 0x14]
mov ecx, dword [ecx + 0x30]
test ecx, ecx
je 0x425ec8
mov edx, dword [eax]
movzx eax, word [edx + 0xc]
push ecx
push eax
call sub.gnwie.dll_SHLsettitle
mov eax, dword [0x447928]
add esp, 8
mov ecx, dword [eax]
movzx edx, word [ecx + 0xc]
push edx
call sub.gnwie.dll_Wsetfocus
add esp, 4
call fcn.00412fe0
test eax, eax
jle 0x425ee5
call fcn.00413100
mov eax, dword [0x447928]
mov ecx, dword [eax + 4]
and dword [ecx + 0x28], 0xffffffef
cmp byte [eax + 0x1c6], 0
je 0x426104
mov byte [eax + 0x1c6], 0
call fcn.00421c10
mov eax, dword [0x447928]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax]
movzx eax, word [edx + 0x12]
add ecx, 0x77e
push ecx
push eax
call fcn.0042e330
mov ecx, dword [0x447928]
mov eax, dword [ecx]
mov edx, dword [0x448908]
movzx ecx, word [eax + 0x10]
push edx
movzx edx, word [eax + 0x14]
push ecx
push edx
call sub.gnwie.dll_ACTBARset
mov eax, dword [0x447928]
mov eax, dword [eax]
movzx edx, word [eax + 0x1a]
mov ecx, dword [0x448910]
movzx eax, word [eax + 0x14]
push ecx
push edx
push eax
call sub.gnwie.dll_ACTBARsetinfo
mov eax, dword [0x447928]
mov ecx, dword [eax + 0xc]
add esp, 0x20
cmp byte [ecx + 0x79c], 0
jne 0x425fd8
mov edx, dword [eax]
movzx eax, word [edx + 0x14]
push 0
push 7
push eax
call sub.gnwie.dll_ACTBARdisableitem
mov ecx, dword [0x447928]
mov edx, dword [ecx]
movzx eax, word [edx + 0x14]
push 0
push 0x28
push eax
call sub.gnwie.dll_ACTBARdisableitem
mov ecx, dword [0x447928]
mov edx, dword [ecx]
movzx eax, word [edx + 0x14]
push 0
push 0x29
push eax
call sub.gnwie.dll_ACTBARdisableitem
mov ecx, dword [0x447928]
mov eax, dword [ecx + 4]
or dword [eax + 0x18], 0x400
mov ecx, dword [ecx]
movzx edx, word [ecx + 0x14]
push 0
push 0x27
push edx
call sub.gnwie.dll_ACTBARdisableitem
mov eax, dword [0x447928]
add esp, 0x30
mov eax, dword [eax]
movzx ecx, word [eax + 0x14]
push 0
push 0x2a
push ecx
call sub.gnwie.dll_ACTBARdisableitem
mov edx, dword [0x447928]
mov eax, dword [edx]
movzx ecx, word [eax + 0x14]
push 0
push 0x2b
push ecx
call sub.gnwie.dll_ACTBARdisableitem
mov edx, dword [0x447928]
mov eax, dword [edx]
movzx ecx, word [eax + 0x14]
push 0
push 0x2c
push ecx
call sub.gnwie.dll_ACTBARdisableitem
add esp, 0x24
call fcn.00412fe0
test eax, eax
jg 0x426039
mov edx, dword [0x447928]
mov eax, dword [edx]
movzx ecx, word [eax + 0x14]
push 0
push 0xc
push ecx
call sub.gnwie.dll_ACTBARdisableitem
add esp, 0xc
mov eax, dword [0x447928]
mov edx, dword [eax + 4]
test byte [edx + 0x20], 0x40
je 0x42604e
call fcn.00421800
jmp 0x4260af
mov ecx, dword [0x44890c]
mov edx, dword [ecx + 8]
mov ecx, dword [eax + 0xe8]
push edx
mov edx, dword [eax]
movzx eax, word [edx + 0xc]
add ecx, 0x35
push ecx
push 7
push eax
call sub.gnwie.dll_SHLquerywid
add esp, 8
push eax
call sub.gnwie.dll_ABsettext
mov ecx, dword [0x44890c]
mov edx, dword [ecx + 8]
mov eax, dword [0x447928]
mov ecx, dword [eax + 0xe8]
add esp, 0xc
push edx
mov edx, dword [eax]
movzx eax, word [edx + 0xc]
add ecx, 0x36
push ecx
push 7
push eax
call sub.gnwie.dll_SHLquerywid
add esp, 8
push eax
call sub.gnwie.dll_ABsettext
add esp, 0xc
mov ecx, dword [0x447928]
mov edx, dword [ecx + 4]
test byte [edx + 0x20], 0x20
je 0x4260f3
call fcn.004131f0
mov ecx, dword [0x447928]
mov edx, dword [ecx]
mov word [edx + 0x26], ax
mov eax, dword [ecx]
movzx ecx, word [eax + 0xc]
push ecx
call sub.gnwie.dll_Wsetfocus
mov eax, dword [0x447928]
mov edx, dword [eax]
add esp, 4
cmp word [edx + 0x26], 0
je 0x4260f3
mov eax, dword [eax + 4]
or dword [eax + 0x1c], 2
push 0x31
call fcn.00421d10
add esp, 4
call fcn.00430e40
jmp 0x426109
call fcn.00430e80
call fcn.004202d0
sub eax, 1
jne 0x426118
call fcn.00432470
call fcn.00425590
mov eax, dword [0x447928]
mov ecx, dword [eax + 0x28]
push ecx
push 0
call fcn.00420200
add esp, 8
pop edi
pop esi
pop ebx
ret