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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
mov esi, dword [esp + 0x78]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x28], eax
cmp ebx, 0x112
jg 0x42b5b8
cmp ebx, 0xff
jg 0x42b5a0
lea eax, [ebx - 3]
cmp eax, 0x21
ja case.0x42b5ab.259
jmp dword [eax*4 + 0x449168]
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebp, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
mov edi, eax
movzx eax, byte [eax]
test ebp, ebp
je 0x42bdd0
test al, al
jne 0x42bdd0
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
movzx eax, byte [edi]
test al, al
jne 0x42bdd0
mov edx, dword [ebp + 0x6c]
lea ecx, [esp + 0x40]
call sym._pGetWindowRect__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x2c], eax
movzx eax, byte [edi]
test al, al
jne 0x42be99
mov eax, edx
sub eax, ecx
xor edx, eax
xor ecx, eax
not edx
or ecx, edx
jns 0x42be68
mov edx, eax
mov ecx, ebp
call fcn.00432cb0
movzx eax, byte [edi]
test al, al
jne 0x42be99
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov edx, eax
sub edx, ecx
xor eax, edx
xor ecx, edx
not eax
or ecx, eax
jns 0x42be68
mov ecx, ebp
call fcn.00432d30
movzx eax, byte [edi]
test al, al
jne 0x42be99
mov edx, dword [ebp + 0x6c]
lea ecx, [esp + 0x40]
call sym._pGetClientRect__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x2c], eax
movzx eax, byte [edi]
test al, al
jne 0x42be99
mov eax, edx
sub eax, ecx
xor edx, eax
xor ecx, eax
not edx
or ecx, edx
jns 0x42be68
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov dword [ebp + 0x28], eax
mov eax, edx
sub eax, ecx
xor edx, eax
xor ecx, eax
not edx
or ecx, edx
jns 0x42be68
mov dword [ebp + 0x2c], eax
call sym._new__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352Znigui_u105
mov dword [esp + 0x30], eax
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
movzx eax, byte [edi]
test al, al
jne 0x42b538
mov ecx, dword [esp + 0x30]
mov edx, ebp
call fcn.0041aae0
movzx eax, byte [edi]
test al, al
jne 0x42b538
mov edx, dword [esp + 0x30]
mov ecx, ebp
call sym._handleResizeEvent__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5
movzx eax, byte [edi]
test al, al
jne 0x42b538
mov ecx, ebp
call fcn.00421050
movzx eax, byte [edi]
lea esi, [esi]
mov byte [edi], 0
mov ecx, dword [esp + 0x30]
mov byte [esp + 0x2c], al
call fcn.0042a3a0
movzx edx, byte [edi]
movzx eax, byte [esp + 0x2c]
test dl, dl
cmovne eax, edx
mov byte [esp + 0x2c], al
mov ecx, ebp
mov byte [edi], 0
call fcn.00417fd0
cmp byte [edi], 0
jne 0x42b690
movzx eax, byte [esp + 0x2c]
mov byte [edi], al
test al, al
jne 0x42b690
mov eax, dword [esp + 0x28]
mov dword [esp + 0x78], esi
mov dword [esp + 0x74], ebx
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x70], eax
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
jmp sym._pCommonWndProc__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352
lea eax, [ebx - 0x100]
cmp eax, 0x12
ja case.0x42b5ab.259
jmp dword [eax*4 + 0x4491f0]
cmp ebx, 0x233
je 0x42baa8
cmp ebx, 0x400
jne case.0x42b5ab.259
mov ecx, dword [esi + 4]
mov eax, dword [esi]
test ecx, ecx
je 0x42bdc8
call eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
cmp byte [eax], 0
jne 0x42b690
mov dword [esp], esi
call sym._deallocShared
mov eax, dword [0x460260]
lea edx, [eax - 1]
xor eax, edx
not eax
or eax, edx
js 0x42bda0
call sym._raiseOverflow
xor eax, eax
jmp 0x42ba81
mov edx, dword [esp + 0x28]
mov ecx, esi
call sym._pWMParamsToKey__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352
mov dword [esp], 0x447178
mov edi, eax
call sym.___emutls_get_address
cmp byte [eax], 0
mov ebp, eax
jne 0x42b690
mov eax, dword [0x4603a8]
mov ecx, dword [0x4603ac]
test eax, eax
jle case.0x42b5ab.259
xor edx, edx
jmp 0x42b66b
add edx, 1
cmp edx, eax
je case.0x42b5ab.259
cmp di, word [ecx + edx*2 + 4]
jne 0x42b660
mov ecx, 0x4603a8
call sym._delete__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352Znigui_u
cmp byte [ebp], 0
je case.0x42b5ab.259
lea esi, [esi]
lea esi, [esi]
xor eax, eax
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebp, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
movzx edx, byte [eax]
mov edi, eax
test dl, dl
jne 0x42be80
test ebp, ebp
je 0x42ba90
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
movzx edx, byte [edi]
test dl, dl
jne 0x42be80
mov eax, dword [esp + 0x28]
mov dword [esp], esi
xor edx, edx
mov ecx, ebp
mov dword [esp + 4], eax
call sym._pHandleWMKEYDOWN__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce53
movzx edx, byte [edi]
sub esp, 8
cmp dl, 1
jne 0x42b7a8
mov byte [esp + 0x2c], dl
mov ecx, ebp
mov byte [edi], 0
call fcn.00417fd0
cmp byte [edi], 0
jne 0x42b690
movzx edx, byte [esp + 0x2c]
mov byte [edi], dl
test dl, dl
je case.0x42b5ab.259
jmp 0x42b690
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebp, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
movzx edx, byte [eax]
mov edi, eax
test dl, dl
jne 0x42be80
test ebp, ebp
je 0x42ba90
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
movzx edx, byte [edi]
test dl, dl
jne 0x42be80
mov dword [esp], esi
xor edx, edx
mov ecx, ebp
call sym._pHandleWMKEYDOWNOrWMCHAR__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f
movzx edx, byte [edi]
sub esp, 4
cmp dl, 1
je 0x42b710
test al, al
je 0x42b710
mov ecx, ebp
call fcn.00417fd0
xor eax, eax
jmp 0x42b692
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebp, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
cmp byte [eax], 0
mov edi, eax
jne 0x42b690
test ebp, ebp
je 0x42b820
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
cmp byte [edi], 0
jne 0x42b690
cmp esi, 0xf020
je 0x42be90
cmp esi, 0xf120
jne 0x42b820
mov byte [ebp + 0x11], 0
lea esi, [esi]
mov ecx, ebp
call fcn.00417fd0
cmp byte [edi], 0
je case.0x42b5ab.259
jmp 0x42b690
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebp, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
mov edi, eax
movzx eax, byte [eax]
test al, al
jne 0x42bdd0
test ebp, ebp
je 0x42ba90
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
movzx eax, byte [edi]
test al, al
jne 0x42bdd0
mov edx, dword [ebp + 0x6c]
lea ecx, [esp + 0x40]
call sym._pGetWindowRect__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352
movzx eax, byte [edi]
test al, al
jne 0x42b555
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov dword [ebp + 0x34], eax
mov dword [ebp + 0x30], edx
movzx eax, byte [edi]
jmp 0x42b555
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov edi, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
cmp byte [eax], 0
mov ebp, eax
jne 0x42b690
test edi, edi
je 0x42b8fe
mov eax, edi
call sym._nimIncRefCyclic.constprop.0
cmp byte [ebp], 0
jne 0x42b690
mov ecx, dword [edi + 0x74]
test ecx, ecx
je 0x42b914
call sym._focus__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352Znigui_u1
cmp byte [ebp], 0
jne 0x42b690
mov ecx, edi
call fcn.00417fd0
cmp byte [ebp], 0
je case.0x42b5ab.259
jmp 0x42b690
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebp, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
cmp byte [eax], 0
mov edi, eax
jne 0x42b690
test ebp, ebp
je 0x42b820
mov eax, ebp
call sym._nimIncRefCyclic.constprop.0
cmp byte [edi], 0
jne 0x42b690
mov ecx, ebp
call fcn.00432da0
cmp byte [edi], 0
jne 0x42b690
mov ecx, dword [esp + 0x28]
mov dword [ecx + 0x18], eax
mov ecx, ebp
call fcn.00432e20
cmp byte [edi], 0
jne 0x42b690
mov ecx, dword [esp + 0x28]
mov dword [ecx + 0x1c], eax
jmp 0x42b820
mov dword [esp], 2
xor ecx, ecx
mov edx, 2
call sym._newSeqPayload_12
mov ecx, dword [0x4603ac]
sub esp, 4
cmp eax, ecx
je 0x42b9f0
test ecx, ecx
je 0x42b9f0
test dword [ecx], 0x40000000
jne 0x42b9f0
mov edx, 2
mov dword [esp + 0x2c], eax
call sym._alignedDealloc_8
mov eax, dword [esp + 0x2c]
nop
mov dword [esp], 0x447178
mov dword [0x4603a8], 0
mov dword [0x4603ac], eax
call sym.___emutls_get_address
cmp byte [eax], 0
je case.0x42b5ab.259
jmp 0x42b690
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov ebx, eax
mov dword [esp], 0x447178
call sym.___emutls_get_address
cmp byte [eax], 0
mov esi, eax
jne 0x42bde0
test ebx, ebx
je 0x42ba65
mov eax, ebx
call sym._nimIncRefCyclic.constprop.0
cmp byte [esi], 0
jne 0x42bde0
mov ecx, ebx
call sym._closeClick__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352Znig
cmp byte [esi], 0
jne 0x42bde2
mov ecx, ebx
call fcn.00417fd0
mov eax, 1
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
xor ecx, ecx
call fcn.00417fd0
cmp byte [edi], 0
je case.0x42b5ab.259
jmp 0x42b690
mov eax, dword [esp + 0x24]
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 4], 0xffffffeb
mov dword [esp], eax
call dword [0x4600d0]
sub esp, 8
mov dword [esp], 0x447178
mov dword [esp + 0x38], eax
call sym.___emutls_get_address
movzx ebp, byte [eax]
mov dword [esp + 0x2c], eax
mov ecx, ebp
test cl, cl
jne 0x42bb0b
mov edx, dword [esp + 0x38]
test edx, edx
je 0x42bb70
mov eax, dword [esp + 0x38]
call sym._nimIncRefCyclic.constprop.0
mov eax, dword [esp + 0x2c]
movzx ebp, byte [eax]
mov eax, ebp
test al, al
je 0x42bb70
mov dword [esp + 0x38], 0
xor edi, edi
lea esi, [esi]
mov eax, dword [esp + 0x2c]
mov ecx, edi
mov byte [eax], 0
call fcn.0042a640
mov edi, dword [esp + 0x2c]
cmp byte [edi], 0
jne 0x42b690
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._eqdestroy___system_u3746_8
sub esp, 8
mov ecx, dword [esp + 0x38]
call fcn.00417fd0
cmp byte [edi], 0
jne 0x42b690
mov eax, ebp
mov byte [edi], al
test al, al
je case.0x42b5ab.259
jmp 0x42b690
mov dword [esp], 4
xor ecx, ecx
mov edx, 8
mov dword [esp + 0x40], 0
call sym._newSeqPayload_12
sub esp, 4
mov dword [esp + 0x44], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xffffffff
mov dword [esp], esi
call dword [0x4600c4]
lea ecx, [eax - 1]
sub esp, 0x10
xor eax, ecx
mov dword [esp + 0x30], ecx
not eax
or eax, ecx
jns 0x42bdb0
mov eax, dword [esp + 0x30]
xor ebp, ebp
test eax, eax
js 0x42bd08
mov dword [esp + 0x3c], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebp
mov dword [esp], esi
call dword [0x4600c4]
sub esp, 0x10
lea ecx, [eax + eax]
mov ebx, eax
mov dword [esp + 0x34], eax
fild dword [esp + 0x34]
mov dword [esp + 0x34], ecx
fadd st(0)
fild dword [esp + 0x34]
fxch st(1)
fucomi st(1)
jp 0x42bc1a
je 0x42bc40
fld st(0)
fabs
fxch st(2)
fsubrp st(1)
fabs
fmul dword [0x449a88]
fxch st(1)
fcompi st(1)
fstp st(0)
jb 0x42bd90
jmp 0x42bc44
fstp st(0)
fstp st(0)
test ecx, ecx
js 0x42be30
call sym._mnewString_4
mov ecx, eax
lea eax, [ebx + 1]
mov edi, edx
xor ebx, eax
test eax, ebx
js 0x42bcd8
test ecx, ecx
mov dword [esp + 0x34], ecx
lea edx, [edx + 4]
mov ecx, 0x44903f
cmove edx, ecx
mov dword [esp + 0xc], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp], esi
call dword [0x4600c4]
sub esp, 0x10
mov ecx, dword [esp + 0x34]
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], ecx
call sym._pUtf16ToUtf8__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352Zn
sub esp, 0xc
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 0
jne 0x42bdff
mov dword [esp], eax
lea ecx, [esp + 0x40]
mov dword [esp + 4], edx
call sym._add__stdZenumutils_u69_12
lea eax, [ebp + 1]
mov edx, ebp
xor edx, eax
sub esp, 8
test eax, edx
js 0x42bcd8
mov ebp, eax
jmp 0x42bcdd
call sym._raiseOverflow
test edi, edi
je 0x42bced
test dword [edi], 0x40000000
je 0x42be20
mov eax, dword [esp + 0x2c]
cmp byte [eax], 0
jne 0x42be10
cmp dword [esp + 0x30], ebp
jge 0x42bbdb
mov ebx, dword [esp + 0x3c]
mov dword [esp], esi
call dword [0x4600c0]
sub esp, 4
call sym._new__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656ce5352Znigui_u106
mov edi, eax
mov eax, dword [esp + 0x38]
test eax, eax
je 0x42bd28
call sym._nimIncRefCyclic.constprop.0
mov eax, dword [esp + 0x2c]
movzx ebp, byte [eax]
mov eax, ebp
test al, al
jne 0x42bb18
mov edx, dword [esp + 0x38]
mov ecx, edi
call fcn.0041aae0
mov eax, dword [esp + 0x2c]
movzx ebp, byte [eax]
mov eax, ebp
test al, al
jne 0x42bb18
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
lea ecx, [edi + 4]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._eqsink___system_u3755_12
sub esp, 8
lea ecx, [esp + 0x40]
call sym._eqwasMoved___system_u3743_4
mov ecx, dword [esp + 0x38]
mov edx, edi
call sym._handleDropFilesEvent__OOZOOZOOZOnimbleZpkgs50Znigui4548O50O56455450a545256515052e51a495253b5152aa51515652e57525652cd4855f5656
mov eax, dword [esp + 0x2c]
movzx ebp, byte [eax]
jmp 0x42bb18
call sym._raiseOverflow
jmp 0x42bced
mov dword [0x460260], edx
jmp case.0x42b5ab.259
call sym._raiseOverflow
mov eax, dword [esp + 0x2c]
xor edi, edi
movzx ebp, byte [eax]
jmp 0x42bb18
call eax
jmp 0x42b5db
xor ebp, ebp
jmp 0x42b555
xor ebx, ebx
mov byte [esi], 0
mov ecx, ebx
call fcn.00417fd0
cmp byte [esi], 0
jne 0x42b690
mov byte [esi], 1
xor eax, eax
jmp 0x42b692
test edi, edi
je 0x42be10
test dword [edi], 0x40000000
je 0x42be20
lea esi, [esi]
nop
mov ebx, dword [esp + 0x3c]
mov ebp, 1
xor edi, edi
jmp 0x42bb18
mov dword [esp], edi
call sym._deallocShared
jmp 0x42bced
mov dword [esp], ecx
sar ecx, 0x1f
mov dword [esp + 0x10], 0x7fffffff
mov dword [esp + 0x14], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 4], ecx
call sym._raiseRangeErrorI
jmp 0x42bced
call sym._raiseOverflow
mov dword [esp + 0x30], 0
movzx eax, byte [edi]
jmp 0x42b538
xor ebp, ebp
jmp 0x42b710
mov byte [ebp + 0x11], 1
jmp 0x42b820
mov dword [esp + 0x30], 0
jmp 0x42b538