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

Disassembly:
push 0xffffffffffffffff
push 0x478cbf
mov eax, dword fs:[0]
push eax
mov eax, 0x2370
call fcn.00473d60
mov eax, dword [0x4a3eb0]
xor eax, esp
mov dword [esp + 0x236c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4a3eb0]
xor eax, esp
push eax
lea eax, [esp + 0x2384]
mov dword fs:[0], eax
mov eax, dword [esp + 0x239c]
mov edi, dword [esp + 0x2398]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2394]
xor ebx, ebx
mov dword [esp + 0x238c], ebx
cmp eax, ebx
jne 0x438e5f
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x30]
push 0x2710
push eax
call edx
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov dword [esp + 0x68], ebx
call edx
add eax, 0x10
mov dword [esp + 0x24], eax
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov byte [esp + 0x238c], 1
call edx
add eax, 0x10
mov dword [esp + 0x30], eax
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov byte [esp + 0x238c], 2
call edx
add eax, 0x10
mov dword [esp + 0x34], eax
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov byte [esp + 0x238c], 3
call edx
add eax, 0x10
mov dword [esp + 0x38], eax
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov byte [esp + 0x238c], 4
call edx
add eax, 0x10
mov dword [esp + 0x4c], eax
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov byte [esp + 0x238c], 5
call edx
add eax, 0x10
mov dword [esp + 0x48], eax
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
mov byte [esp + 0x238c], 6
call edx
add eax, 0x10
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x2394]
mov byte [esp + 0x238c], 7
cmp eax, ebx
jne 0x438f57
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
lea edx, [esp + 0x70]
push edx
push eax
mov eax, dword [ecx + 0x3c]
call eax
mov ecx, dword [esp + 0x70]
push ecx
lea ecx, [esp + 0x24]
call fcn.004062c0
lea ecx, [esp + 0x20]
mov byte [esp + 0x238c], 8
call fcn.00408030
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx - 0xc]
cmp eax, ebx
jl 0x438fb4
push str.VID_04E8PID_6640
push ecx
call dword [sym.imp.MSVCR90.dll_wcsstr]
add esp, 8
cmp eax, ebx
je 0x438fb4
sub eax, dword [esp + 0x20]
sar eax, 1
cmp eax, 0xffffffff
jle 0x438fb4
mov dword [esp + 0x68], 1
mov edx, dword [0x4a440c]
mov eax, dword [edx + 0xc]
mov ecx, 0x4a440c
call eax
add eax, 0x10
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x2394]
push 0x2710
push 3
lea ecx, [esp + 0x74]
push ecx
push edx
mov byte [esp + 0x239c], 9
mov dword [esp + 0x68], 0x425000
mov dword [esp + 0x6c], 0x4250e0
mov dword [esp + 0x70], 0x425170
mov dword [esp + 0x74], 0x42c740
mov byte [esp + 0x7c], 0x81
mov byte [esp + 0x7d], 0
mov byte [esp + 0x7e], 3
call fcn.00424e90
mov edx, dword [esp + 0x2394]
push ebx
push ebx
push 0x2710
lea eax, [esp + 0x34]
push eax
push 3
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
mov ebp, dword [sym.imp.MSVCR90.dll_atoi]
add esp, 0x1c
jmp 0x439050
push 5
push 0x48534c
lea ecx, [esp + 0x24]
call fcn.00402b50
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
push 0x2710
push eax
mov eax, dword [esp + 0x239c]
push esi
push eax
call fcn.00424e90
test eax, eax
jl 0x4390b5
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
test eax, eax
je 0x439179
cmp eax, 1
jne 0x439156
mov edx, dword [esp + 0x28]
lea eax, [esp + 0x178]
push str.ERROR:
push eax
mov byte [esp + edx + 0x180], 0
call dword [sym.imp.MSVCR90.dll_strstr]
add esp, 8
push eax
lea ecx, [esp + 0x18]
call fcn.00403470
push str.CME_ERROR:_r_n
push str.CME_ERROR:_r_n
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2394], 0xa
call fcn.0042bef0
mov ecx, eax
call fcn.00429c30
mov ecx, dword [esp + 0x14]
push ecx
call ebp
add esp, 4
cmp eax, 0xa
je 0x439282
mov edx, dword [esp + 0x14]
push edx
call fcn.0042b280
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
add esp, 4
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439166
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x439166
cmp eax, 2
je 0x439166
cmp eax, 0x8007048f
je 0x439471
cmp ebx, 5
je 0x43961a
inc ebx
cmp ebx, 5
jbe 0x439050
push 7
push str.ATGMM_r
lea ecx, [esp + 0x24]
call fcn.00402b50
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
push 0x2710
push eax
mov eax, dword [esp + 0x239c]
push esi
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
cmp eax, 2
jne 0x439230
push 8
push str.ATCGMM_r
lea ecx, [esp + 0x24]
call fcn.00402b50
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
mov edx, dword [esp + 0x2394]
push 0x2710
push eax
push esi
push edx
call fcn.00424e90
push 3
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0x239c]
push 0x2710
lea ecx, [esp + 0x34]
push ecx
push 0x2000
lea edx, [esp + 0x18c]
push edx
push eax
call fcn.00424f40
add esp, 0x1c
test eax, eax
jne 0x43c26b
mov eax, dword [esp + 0x28]
test eax, eax
je 0x439b8c
lea ecx, [esp + 0x78]
push 3
lea edx, [esp + 0x17c]
mov dword [esp + 0x78], ecx
push edx
lea ecx, [esp + 0x7c]
mov byte [esp + eax + 0x180], 0
call fcn.00401920
mov edx, dword [esp + 0x74]
mov byte [esp + 0x238c], 0xc
test edx, edx
jne 0x4397c3
xor eax, eax
jmp 0x4397df
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x439297
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
push str.CDeviceManager::ModemIdentify
push 0x47edf8
call fcn.00403120
push 1
push 0x47f460
call fcn.00403120
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x239c], 9
add esp, 0x10
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4392e5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 8
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439309
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 7
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439331
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 6
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439359
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 5
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439381
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 4
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4393a9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 3
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4393d1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 2
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4393f9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 1
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439421
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 0
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439449
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
test eax, eax
mov dword [esp + 0x238c], 0xffffffff
je 0x439467
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 6
jmp 0x43c68b
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x439486
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea eax, [esi - 0x10]
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 8
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4394b2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 7
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4394da
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 6
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439502
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 5
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43952a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 4
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439552
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 3
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43957a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 2
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4395a2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 1
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4395ca
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 0
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4395f2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
test eax, eax
mov dword [esp + 0x238c], 0xffffffff
je 0x439610
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 3
jmp 0x43c68b
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x43962f
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43965b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 7
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439683
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4396ab
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4396d3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4396fb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439723
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43974b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439773
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43979b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
mov dword [esp + 0x238c], 0xffffffff
test eax, eax
je 0x4397b9
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 5
jmp 0x43c68b
mov eax, edx
lea esi, [eax + 2]
jmp 0x4397d0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4397d0
sub eax, esi
sar eax, 1
push eax
push edx
mov ecx, edi
call fcn.00402860
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], 9
cmp eax, ecx
je 0x439806
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
push 0x47ed68
push str.CGMM:
mov ecx, edi
call fcn.00407e00
push 0x47ed68
push 0x4861b8
mov ecx, edi
call fcn.00407e00
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x20]
push eax
mov ecx, edi
mov dword [esp + 0x4c], 0
call fcn.0040ba40
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439866
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x20]
push edx
mov ecx, edi
call fcn.0040ba40
push eax
mov ecx, edi
mov byte [esp + 0x2390], 0xd
call fcn.00404410
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4398b4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x47ed68
push str.SAMSUNG
mov ecx, edi
call fcn.00407e00
push 0x47ed68
push 0x47f3c4
mov ecx, edi
call fcn.00407e00
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
jle 0x43993b
push 0x2f
push eax
call dword [sym.imp.MSVCR90.dll_wcschr]
add esp, 8
test eax, eax
je 0x43993b
sub eax, dword [edi]
sar eax, 1
js 0x43993b
push eax
push 0
lea ecx, [esp + 0x20]
push ecx
mov ecx, edi
call fcn.00407b80
push eax
mov ecx, edi
mov byte [esp + 0x2390], 0xe
call fcn.00404410
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x43993b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.SCH_R350_111
lea ecx, [esp + 0x1c]
call fcn.004062c0
push eax
push edi
call fcn.00406970
mov bl, al
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
add esp, 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439975
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
test bl, bl
je 0x439987
push 8
push str.SCH_R350
mov ecx, edi
call fcn.00402860
push str.GT_I5700
lea ecx, [esp + 0x1c]
call fcn.004062c0
push eax
push edi
call fcn.00406970
mov bl, al
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
add esp, 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4399c1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
test bl, bl
je 0x4399d1
push str.Unknown
mov ecx, edi
call fcn.00408380
push 0x47ed68
lea ecx, [esp + 0x20]
call fcn.00429a70
xor edi, edi
xor esi, esi
mov dword [esp + 0x14], 0x208
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], edi
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x1c]
push edx
push edi
push 0x2001f
push edi
push edi
push edi
push str.SoftwareSamsungNew_PC_Studio
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [esp + 0x23b0], 0xf
mov dword [esp + 0x3c], edi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
cmp eax, edi
jne 0x439b08
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x217c]
push ecx
push str.PackageVersion
lea ecx, [esp + 0x4c]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], edi
call fcn.0040e980
test eax, eax
jne 0x439b08
push 0x47ed68
lea ecx, [esp + 0x1c]
call fcn.004062c0
push ecx
lea edx, [esp + 0x217c]
mov ecx, esp
mov dword [esp + 0x58], esp
mov bl, 0x10
push edx
mov byte [esp + 0x2394], bl
call fcn.004062c0
lea eax, [esp + 0x18]
push eax
call fcn.0042f810
mov ecx, dword [eax]
push ecx
lea edx, [esp + 0x24]
push str.ATCGTEMRNewPCStudio__s_r_n
push edx
mov byte [esp + 0x23a0], 0x11
call fcn.00402e30
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
add esp, 0x14
mov byte [esp + 0x238c], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439ad2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x18]
push ecx
lea ecx, [esp + 0x20]
call fcn.00429a70
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0xf
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x439b08
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x1c]
push 0x47ed68
push ecx
call fcn.00437130
add esp, 8
test al, al
je 0x439b2e
push 0x16
push str.ATCGTEMRNewPCStudio_r
lea ecx, [esp + 0x24]
call fcn.00402b50
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
mov edx, dword [esp + 0x2394]
push 0x2710
push ecx
push eax
push edx
call fcn.00424e90
push 3
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0x239c]
push 0x2710
lea ecx, [esp + 0x34]
push ecx
push 0x2000
lea edx, [esp + 0x18c]
push edx
push eax
call fcn.00424f40
add esp, 0x1c
mov byte [esp + 0x238c], 9
cmp esi, edi
je 0x439b9c
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x439b9c
push 0
push 0x47ed68
mov ecx, edi
call fcn.00402860
xor edi, edi
push 0xb
push str.ATIMEINUM_r
lea ecx, [esp + 0x24]
call fcn.00402b50
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
mov ecx, dword [esp + 0x2394]
push 0x2710
push eax
push esi
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
jne 0x439d8f
mov eax, dword [esp + 0x2394]
cmp eax, edi
jne 0x439c15
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439c41
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 7
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439c69
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439c91
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439cb9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439ce1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439d09
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439d31
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x238c], 1
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439d59
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439d81
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
cmp eax, edi
jmp 0x4395fb
mov eax, dword [esp + 0x28]
cmp eax, edi
jbe 0x439f2c
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2390], 0x12
call fcn.004062c0
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov bl, 0x14
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x439df3
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x4830a8
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x4c], edi
call fcn.0040ba40
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439e2f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [esp + 0x40], edi
jle 0x439e86
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x24]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2390], 0x15
call fcn.00404410
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
mov byte [esp + 0x238c], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439e86
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x18]
cmp dword [eax - 0xc], edi
je 0x439f08
mov edi, dword [esp + 0x2394]
test edi, edi
jne 0x439ea4
push 0x80004003
call fcn.004650f0
push eax
lea ecx, [esp + 0x44]
call fcn.00406740
mov esi, eax
push str.IMEINUM
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x16
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x17
test ecx, ecx
je 0x439ed8
mov ecx, dword [ecx]
jmp 0x439eda
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x439ee4
mov eax, dword [eax]
jmp 0x439ee6
xor eax, eax
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push edi
call eax
lea ecx, [esp + 0x14]
call fcn.004084a0
lea ecx, [esp + 0x40]
call fcn.004084a0
mov eax, dword [esp + 0x18]
xor edi, edi
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x439f2c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 8
push str.ATSBMM_r
lea ecx, [esp + 0x24]
call fcn.00402b50
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
mov ecx, dword [esp + 0x2394]
push 0x2710
push eax
push esi
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
je 0x439c00
mov eax, dword [esp + 0x28]
cmp eax, edi
jbe 0x43a122
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x34]
mov byte [esp + 0x2390], 0x18
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], 9
cmp eax, ecx
je 0x439ff3
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x4c], edi
call fcn.0040ba40
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43a02f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x3c]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x2390], 0x19
call fcn.00404410
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43a081
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x47ed68
push str.SBMM
lea ecx, [esp + 0x38]
call fcn.00407e00
mov ecx, dword [esp + 0x30]
cmp dword [ecx - 0xc], edi
je 0x43a122
mov edi, dword [esp + 0x2394]
test edi, edi
jne 0x43a0b6
push 0x80004003
call fcn.004650f0
mov edx, dword [esp + 0x30]
push edx
lea ecx, [esp + 0x18]
call fcn.00406740
mov esi, eax
push str.Base_Model_Name
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2390], 0x1a
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x1b
test ecx, ecx
je 0x43a0ee
mov ecx, dword [ecx]
jmp 0x43a0f0
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x43a0fa
mov eax, dword [eax]
jmp 0x43a0fc
xor eax, eax
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push edi
call eax
lea ecx, [esp + 0x18]
call fcn.004084a0
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.004084a0
xor edi, edi
push str.ATGMC_r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
mov ecx, dword [esp + 0x2394]
push 0x2710
push eax
push esi
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
je 0x439c00
mov eax, dword [esp + 0x28]
cmp eax, edi
jbe 0x43a316
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x2390], 0x1c
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], 9
cmp eax, ecx
je 0x43a1e7
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x40]
mov dword [esp + 0x4c], edi
call fcn.0040ba40
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43a223
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x40]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x2390], 0x1d
call fcn.00404410
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43a275
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x47ed68
push str.GMC:
lea ecx, [esp + 0x3c]
call fcn.00407e00
mov ecx, dword [esp + 0x34]
cmp dword [ecx - 0xc], edi
je 0x43a316
mov edi, dword [esp + 0x2394]
test edi, edi
jne 0x43a2aa
push 0x80004003
call fcn.004650f0
mov edx, dword [esp + 0x34]
push edx
lea ecx, [esp + 0x18]
call fcn.00406740
mov esi, eax
push str.CarrierID
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2390], 0x1e
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x1f
test ecx, ecx
je 0x43a2e2
mov ecx, dword [ecx]
jmp 0x43a2e4
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x43a2ee
mov eax, dword [eax]
jmp 0x43a2f0
xor eax, eax
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push edi
call eax
lea ecx, [esp + 0x18]
call fcn.004084a0
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.004084a0
xor edi, edi
push str.ATGSN_r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
mov ecx, dword [esp + 0x239c]
push eax
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
cmp eax, 2
jne 0x43a3c9
push str.ATCGSN_r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
push eax
mov eax, dword [esp + 0x23a0]
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
cmp eax, edi
je 0x43a5df
cmp eax, 1
jne 0x43a55c
mov edx, dword [esp + 0x28]
lea eax, [esp + 0x178]
push str.ERROR:
push eax
mov byte [esp + edx + 0x180], 0
call dword [sym.imp.MSVCR90.dll_strstr]
add esp, 8
push eax
lea ecx, [esp + 0x18]
call fcn.00403470
push str.CME_ERROR:_r_n
push str.CME_ERROR:_r_n
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2394], 0x20
call fcn.0042bef0
mov ecx, eax
call fcn.00429c30
mov ecx, dword [esp + 0x14]
push ecx
call ebp
add esp, 4
cmp eax, 0xa
mov eax, dword [esp + 0x2394]
jne 0x43a4de
cmp eax, edi
jne 0x43a450
push 0x80004003
call fcn.004650f0
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0x34]
call eax
push str.CDeviceManager::ModemIdentify
push 0x47edf8
call fcn.00403120
push 3
push 0x47f460
call fcn.00403120
add esp, 0x10
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
mov eax, dword [esp + 0x2394]
cmp eax, edi
jmp 0x439452
cmp eax, edi
jne 0x43a4ec
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
mov eax, dword [esp + 0x2394]
cmp eax, edi
jmp 0x43c4bd
cmp eax, 0x8007048f
jne 0x43a5df
mov eax, dword [esp + 0x2394]
cmp eax, edi
jne 0x43a578
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
mov eax, dword [esp + 0x2394]
cmp eax, edi
jmp 0x4395fb
mov eax, dword [esp + 0x28]
cmp eax, edi
jbe 0x43a6a0
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
mov esi, dword [esp + 0x2c]
push edx
mov ecx, esi
mov byte [esp + 0x2390], 0x21
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], 9
cmp eax, ecx
je 0x43a644
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x20]
push eax
mov ecx, esi
mov dword [esp + 0x4c], edi
call fcn.0040ba40
lea ecx, [esp + 0x18]
call fcn.00401df0
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
call fcn.0040ba40
push eax
mov ecx, esi
mov byte [esp + 0x2390], 0x22
call fcn.00404410
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.00401df0
jmp 0x43a6b0
mov esi, dword [esp + 0x2c]
push 0x47ed68
mov ecx, esi
call fcn.00403430
push str.ATPBDYN__r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
push eax
mov eax, dword [esp + 0x23a0]
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
jne 0x43a730
mov eax, dword [esp + 0x2394]
cmp eax, edi
jne 0x43a723
push 0x80004003
call fcn.004650f0
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0x34]
call eax
jmp 0x43a580
mov eax, dword [esp + 0x28]
cmp eax, edi
jbe 0x43a81d
mov byte [esp + eax + 0x178], 0
lea eax, [esp + 0x178]
push eax
lea ecx, [esp + 0x78]
call fcn.00402040
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x2390], 0x23
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], 9
cmp eax, ecx
je 0x43a787
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x30]
mov dword [esp + 0x4c], edi
call fcn.0040ba40
lea ecx, [esp + 0x18]
call fcn.00401df0
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x30]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x2390], 0x24
call fcn.00404410
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.00401df0
push edi
push str.PBDYN
lea ecx, [esp + 0x2c]
call fcn.00402000
cmp eax, edi
jl 0x43a81d
push 0x47ed68
push str.PBDYN:
lea ecx, [esp + 0x2c]
call fcn.00407e00
lea ecx, [esp + 0x24]
call fcn.004030c0
mov ecx, eax
call fcn.004029c0
mov eax, dword [esp + 0x24]
mov eax, dword [eax - 0xc]
cmp eax, edi
je 0x43a8c8
push edi
push str.ERROR
lea ecx, [esp + 0x2c]
call fcn.00402000
cmp eax, 0xffffffff
jne 0x43a8c8
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x30]
call fcn.004045b0
lea ecx, [esp + 0x2394]
call fcn.00455f30
mov edx, dword [esp + 0x24]
push edx
lea ecx, [esp + 0x18]
mov esi, eax
call fcn.00406740
mov edi, eax
push str.PhoneNumber
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2390], 0x25
call fcn.004066b0
mov ebp, eax
mov ebx, dword [esi]
mov ecx, edi
mov byte [esp + 0x238c], 0x26
call fcn.004067f0
push eax
mov ecx, ebp
call fcn.004067f0
push eax
mov eax, dword [ebx + 0x6c]
push esi
call eax
lea ecx, [esp + 0x18]
call fcn.004084a0
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.004084a0
mov esi, dword [esp + 0x2c]
xor edi, edi
push edi
push str.ERROR
mov ecx, esi
call fcn.00402000
cmp eax, 0xffffffff
mov edi, dword [esp + 0x2394]
jle 0x43a927
test edi, edi
jne 0x43a8ef
push 0x80004003
call fcn.004650f0
push str.TRUE
lea ecx, [esp + 0x1c]
call fcn.004066b0
mov esi, eax
push str.TEMPORARY_IMEI
lea ecx, [esp + 0x30]
mov byte [esp + 0x2390], 0x27
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x28
test ecx, ecx
je 0x43a96d
mov ecx, dword [ecx]
jmp 0x43a96f
test edi, edi
jne 0x43a935
push 0x80004003
call fcn.004650f0
push 0x485fe4
lea ecx, [esp + 0x1c]
call fcn.004066b0
mov esi, eax
push str.TEMPORARY_IMEI
lea ecx, [esp + 0x30]
mov byte [esp + 0x2390], 0x29
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x2a
test ecx, ecx
je 0x43a96d
mov ecx, dword [ecx]
jmp 0x43a96f
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x43a979
mov eax, dword [eax]
jmp 0x43a97b
xor eax, eax
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push edi
call eax
lea ecx, [esp + 0x2c]
call fcn.004084a0
lea ecx, [esp + 0x18]
mov byte [esp + 0x238c], 9
call fcn.004084a0
push 0
push str.VID_04E8
lea ecx, [esp + 0x28]
call fcn.00402000
cmp eax, 0xffffffff
jle 0x43aa3e
push 0
push str.PID_6651
lea ecx, [esp + 0x28]
call fcn.00402000
cmp eax, 0xffffffff
jle 0x43aa3e
push 0
push str.IF_MOD_2K
lea ecx, [esp + 0x28]
call fcn.00402000
cmp eax, 0xffffffff
jle 0x43aa3e
push str.ATE0_r_n
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
mov ecx, dword [esp + 0x239c]
push eax
push ecx
call fcn.00424e90
test eax, eax
jl 0x43aadc
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
jmp 0x43aad4
push 0
push str.VID_04E8
lea ecx, [esp + 0x28]
call fcn.00402000
cmp eax, 0xffffffff
jle 0x43aadc
push 0
push str.PID_6651
lea ecx, [esp + 0x28]
call fcn.00402000
cmp eax, 0xffffffff
jle 0x43aadc
push 0
push str.IF_JAVACOMM
lea ecx, [esp + 0x28]
call fcn.00402000
cmp eax, 0xffffffff
jle 0x43aadc
push str.ATE0_r_n
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
push eax
mov eax, dword [esp + 0x23a0]
push eax
call fcn.00424e90
test eax, eax
jl 0x43aadc
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
push 0x485f84
lea ecx, [esp + 0x20]
call fcn.004032c0
mov ebp, dword [sym.imp.MSVCR90.dll_wcsstr]
xor edi, edi
mov bl, 0x2d
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx - 0xc]
test eax, eax
je 0x43ab54
jl 0x43ab1b
push str.ERROR
push ecx
call ebp
add esp, 8
test eax, eax
je 0x43ab1b
sub eax, dword [esp + 0x24]
sar eax, 1
cmp eax, 0xffffffff
jne 0x43ab54
mov eax, dword [esp + 0x20]
cmp dword [eax - 0xc], 0
jl 0x43ab3f
push str.VID_04E8PID_6651
push eax
call ebp
add esp, 8
test eax, eax
je 0x43ab3f
sub eax, dword [esp + 0x20]
sar eax, 1
cmp eax, 0xffffffff
jg 0x43ab54
push str.ATUMVERSION__r_n
lea ecx, [esp + 0x20]
call fcn.004032c0
push 0x485f84
jmp 0x43ab67
push str.ATSWVER__r
lea ecx, [esp + 0x20]
call fcn.004032c0
push 0x485f40
lea ecx, [esp + 0x28]
call fcn.00408380
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
mov edx, dword [esp + 0x2394]
push 0x2710
push eax
push esi
push edx
call fcn.00424e90
push 3
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0x239c]
push 0x2710
lea ecx, [esp + 0x34]
push ecx
push 0x2000
lea edx, [esp + 0x18c]
push edx
push eax
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
je 0x439471
mov eax, dword [esp + 0x28]
test eax, eax
jbe 0x43ad38
lea ecx, [esp + 0x78]
push 3
lea edx, [esp + 0x17c]
mov dword [esp + 0x78], ecx
push edx
lea ecx, [esp + 0x7c]
mov byte [esp + eax + 0x180], 0
call fcn.00401920
mov eax, dword [esp + 0x74]
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x2b
call fcn.004062c0
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x43ac26
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x4c], 0
call fcn.0040ba40
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43ac66
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x20]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x2e
call fcn.00404410
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43acb7
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x14]
cmp dword [ecx - 0xc], 0
jl 0x43ad47
push str.SWVER
push ecx
call ebp
mov ecx, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x43ad05
sub eax, ecx
sar eax, 1
js 0x43ad05
push 0x47ed68
push str.SWVER:
lea ecx, [esp + 0x1c]
call fcn.00407e00
lea ecx, [esp + 0x14]
call fcn.004030c0
mov ecx, eax
call fcn.004029c0
mov ecx, dword [esp + 0x14]
cmp dword [ecx - 0xc], 0
jl 0x43ad47
push str.ERROR
push ecx
call ebp
mov ecx, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x43ad47
sub eax, ecx
sar eax, 1
cmp eax, 0xffffffff
je 0x43ad47
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.00401df0
inc edi
cmp edi, 2
jl 0x43aaf4
jmp 0x43adcb
mov edi, dword [esp + 0x2394]
test edi, edi
jne 0x43ad5c
push 0x80004003
call fcn.004650f0
push ecx
lea ecx, [esp + 0x1c]
call fcn.00406740
mov esi, eax
push str.SoftwareRevision
lea ecx, [esp + 0x30]
mov byte [esp + 0x2390], 0x2f
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x30
test ecx, ecx
je 0x43ad90
mov ecx, dword [ecx]
jmp 0x43ad92
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x43ad9c
mov eax, dword [eax]
jmp 0x43ad9e
xor eax, eax
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push edi
call eax
lea ecx, [esp + 0x2c]
call fcn.004084a0
lea ecx, [esp + 0x18]
call fcn.004084a0
lea ecx, [esp + 0x14]
mov byte [esp + 0x238c], 9
call fcn.00401df0
push str.ATHIDSWVER__r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov esi, dword [esp + 0x1c]
xor edi, edi
mov bl, 0x33
mov eax, dword [esi - 0xc]
mov ecx, dword [esp + 0x2394]
push 0x2710
push eax
push esi
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
je 0x439471
mov eax, dword [esp + 0x28]
test eax, eax
jbe 0x43afc7
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x31
call fcn.004062c0
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x43ae93
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esp + 0x40], 0
call fcn.00408030
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x20]
call fcn.0040ba40
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43aedc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x20]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x34
call fcn.00404410
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43af2d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x14]
cmp dword [ecx - 0xc], 0
jl 0x43afd6
push str.HIDSWVER
push ecx
call ebp
mov ecx, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x43af7b
sub eax, ecx
sar eax, 1
js 0x43af7b
push 0x47ed68
push str.HIDSWVER:
lea ecx, [esp + 0x1c]
call fcn.00407e00
lea ecx, [esp + 0x14]
call fcn.004030c0
mov ecx, eax
call fcn.004029c0
mov ecx, dword [esp + 0x14]
cmp dword [ecx - 0xc], 0
jl 0x43afd6
push str.ERROR
push ecx
call ebp
mov ecx, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x43af9d
sub eax, ecx
sar eax, 1
cmp eax, 0xffffffff
jne 0x43afa3
cmp dword [ecx - 0xc], 0
jne 0x43afd6
lea eax, [ecx - 0x10]
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43afc7
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
inc edi
cmp edi, 2
jl 0x43ade1
jmp 0x43b071
mov esi, dword [esp + 0x2394]
test esi, esi
jne 0x43afeb
push 0x80004003
call fcn.004650f0
push ecx
lea ecx, [esp + 0x1c]
call fcn.00406740
mov edi, eax
push 0x485334
lea ecx, [esp + 0x30]
mov byte [esp + 0x2390], 0x35
call fcn.004066b0
mov ecx, dword [edi]
mov byte [esp + 0x238c], 0x36
test ecx, ecx
je 0x43b01f
mov ecx, dword [ecx]
jmp 0x43b021
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x43b02b
mov eax, dword [eax]
jmp 0x43b02d
xor eax, eax
mov edx, dword [esi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push esi
call eax
lea ecx, [esp + 0x2c]
call fcn.004084a0
lea ecx, [esp + 0x18]
call fcn.004084a0
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b071
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
cmp dword [eax - 0xc], 0
jl 0x43b14c
push str.VID_04E8
push eax
call ebp
add esp, 8
test eax, eax
je 0x43b14c
mov ecx, dword [esp + 0x20]
sub eax, ecx
sar eax, 1
cmp eax, 0xffffffff
jle 0x43b14c
cmp dword [ecx - 0xc], 0
jl 0x43b14c
push str.PID_6651
push ecx
call ebp
add esp, 8
test eax, eax
je 0x43b14c
mov ecx, dword [esp + 0x20]
sub eax, ecx
sar eax, 1
cmp eax, 0xffffffff
jle 0x43b14c
cmp dword [ecx - 0xc], 0
jl 0x43b14c
push str.IF_MOD_2K
push ecx
call ebp
add esp, 8
test eax, eax
je 0x43b14c
sub eax, dword [esp + 0x20]
sar eax, 1
cmp eax, 0xffffffff
jle 0x43b14c
push str.ATE0_r_n
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
mov ecx, dword [esp + 0x239c]
push eax
push ecx
call fcn.00424e90
test eax, eax
jl 0x43b14c
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
push 0x11
push str.ATPRODUCTCODE__r_n
lea ecx, [esp + 0x24]
call fcn.00402b50
mov esi, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
push 0x2710
push eax
mov eax, dword [esp + 0x239c]
push esi
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
jne 0x43b1ce
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x43b1c1
push 0x80004003
call fcn.004650f0
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0x34]
call eax
jmp 0x43948e
mov eax, dword [esp + 0x28]
test eax, eax
jbe 0x43b481
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x37
call fcn.004062c0
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov bl, 0x39
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x43b232
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x4c], 0
call fcn.0040ba40
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b272
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
cmp dword [eax - 0xc], 0
jl 0x43b2da
push str.VID_04E8
push eax
call ebp
add esp, 8
test eax, eax
je 0x43b2da
mov ecx, dword [esp + 0x20]
sub eax, ecx
sar eax, 1
cmp eax, 0xffffffff
jle 0x43b2da
cmp dword [ecx - 0xc], 0
jl 0x43b2da
push str.PID_6651
push ecx
call ebp
add esp, 8
test eax, eax
je 0x43b2da
mov ecx, dword [esp + 0x20]
sub eax, ecx
sar eax, 1
cmp eax, 0xffffffff
jle 0x43b2da
cmp dword [ecx - 0xc], 0
jl 0x43b2da
push str.IF_MOD_2K
push ecx
call ebp
add esp, 8
test eax, eax
je 0x43b2da
sub eax, dword [esp + 0x20]
sar eax, 1
cmp eax, 0xffffffff
jg 0x43b32b
lea ecx, [esp + 0x40]
push ecx
push 0x485db8
lea edx, [esp + 0x34]
push edx
lea ecx, [esp + 0x20]
call fcn.0040ba40
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x3a
call fcn.00404410
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b32b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x14]
cmp dword [ecx - 0xc], 0
jl 0x43b399
push str.PRODUCTCODE
push ecx
call ebp
mov ecx, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x43b375
sub eax, ecx
sar eax, 1
js 0x43b375
push 0x47ed68
push str.PRODUCTCODE:
lea ecx, [esp + 0x1c]
call fcn.00407e00
lea ecx, [esp + 0x14]
call fcn.004030c0
mov ecx, eax
call fcn.004029c0
mov ecx, dword [esp + 0x14]
cmp dword [ecx - 0xc], 0
jl 0x43b399
push str.ERROR
push ecx
call ebp
add esp, 8
test eax, eax
je 0x43b399
sub eax, dword [esp + 0x14]
sar eax, 1
cmp eax, 0xffffffff
jne 0x43b459
push 3
lea ecx, [esp + 0x30]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004027a0
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x3b
call fcn.00404410
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], bl
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x43b3e2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, dword [esp + 0x2394]
test edi, edi
jne 0x43b3f7
push 0x80004003
call fcn.004650f0
mov ecx, dword [esp + 0x14]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00406740
mov esi, eax
push str.ProductCode
lea ecx, [esp + 0x30]
mov byte [esp + 0x2390], 0x3c
call fcn.004066b0
mov ecx, dword [esi]
mov byte [esp + 0x238c], 0x3d
test ecx, ecx
je 0x43b42f
mov ecx, dword [ecx]
jmp 0x43b431
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x43b43b
mov eax, dword [eax]
jmp 0x43b43d
xor eax, eax
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [edx + 0x6c]
push edi
call eax
lea ecx, [esp + 0x2c]
call fcn.004084a0
lea ecx, [esp + 0x18]
call fcn.004084a0
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b481
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.ATCLOCK__r
lea ecx, [esp + 0x54]
call fcn.00403470
mov eax, dword [esp + 0x50]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
mov ecx, dword [esp + 0x239c]
push eax
push ecx
mov byte [esp + 0x239c], 0x3e
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
mov ebp, dword [sym.imp.MSVCR90.dll_swscanf_s]
add esp, 0x1c
test eax, eax
jne 0x43b7dd
mov esi, dword [esp + 0x28]
test esi, esi
je 0x43b7dd
mov eax, dword [0x4a440c]
mov edx, dword [eax + 0xc]
mov ecx, 0x4a440c
call edx
add eax, 0x10
mov dword [esp + 0x2c], eax
push 3
lea ecx, [esp + 0x17c]
lea eax, [esp + 0x7c]
push ecx
mov bl, 0x3f
lea ecx, [esp + 0x7c]
mov byte [esp + 0x2394], bl
mov byte [esp + esi + 0x180], 0
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x30]
mov byte [esp + 0x2390], 0x40
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x43b56f
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x14], 0
cmp dword [esi - 0xc], 0
jge 0x43b586
or eax, 0xffffffff
jmp 0x43b5a2
push str.CLOCK:
push esi
call dword [sym.imp.MSVCR90.dll_wcsstr]
add esp, 8
test eax, eax
jne 0x43b59e
or eax, 0xffffffff
jmp 0x43b5a2
sub eax, esi
sar eax, 1
lea edx, [esp + 0x14]
push edx
lea eax, [esi + eax*2]
push str.CLOCK:_d
push eax
call ebp
add esp, 0xc
cmp dword [esp + 0x14], 1
jne 0x43b7b9
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x43b5d5
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 0x3e
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b601
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x50]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b629
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b651
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 7
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b679
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b6a1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b6c9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b6f1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b719
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b741
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b769
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b791
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
mov dword [esp + 0x238c], 0xffffffff
test eax, eax
je 0x43b7af
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 0x17
jmp 0x43c68b
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 0x3e
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b7dd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x4a440c]
mov eax, dword [edx + 0xc]
mov ecx, 0x4a440c
call eax
lea esi, [eax + 0x10]
mov dword [esp + 0x14], esi
push str.ATCIMI_r
lea ecx, [esp + 0x20]
mov byte [esp + 0x2390], 0x41
call fcn.004032c0
mov edi, dword [esp + 0x1c]
mov eax, dword [edi - 0xc]
mov ecx, dword [esp + 0x2394]
push 0x2710
push eax
push edi
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
cmp eax, 0x8007048f
jne 0x43b8cb
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x43b86f
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 0x3e
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b89b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x50]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b8c3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
jmp 0x439491
mov eax, dword [esp + 0x28]
test eax, eax
jbe 0x43b988
push 3
lea ecx, [esp + 0x17c]
mov byte [esp + eax + 0x17c], 0
lea eax, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
call fcn.00401920
mov edx, dword [esp + 0x74]
push edx
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x42
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], 0x41
cmp eax, ecx
je 0x43b92e
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea edx, [esp + 0x40]
push edx
push 0x485db8
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x4c], 0
call fcn.0040ba40
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2390], 0x43
call fcn.00404410
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0x41
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b988
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [esp + 0x68], 0
je 0x43c075
push str.ATPMODE1_r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
mov ecx, dword [esp + 0x239c]
push eax
push ecx
call fcn.00424e90
push 3
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x239c]
push 0x2710
lea eax, [esp + 0x34]
push eax
push 0x2000
lea ecx, [esp + 0x18c]
push ecx
push edx
call fcn.00424f40
add esp, 0x1c
push str.ATCHKUSIM_r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov edi, dword [esp + 0x1c]
mov eax, dword [edi - 0xc]
push 0x2710
push eax
mov eax, dword [esp + 0x239c]
push edi
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
test eax, eax
jne 0x43bb29
mov edx, dword [0x4a440c]
mov eax, dword [edx + 0xc]
mov ecx, 0x4a440c
call eax
add eax, 0x10
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x178]
push ecx
lea edx, [esp + 0x30]
push 0x47fca8
push edx
mov byte [esp + 0x2398], 0x44
call fcn.0040d470
mov esi, dword [esp + 0x38]
add esp, 0xc
cmp dword [esi - 0xc], 0
jl 0x43bb18
push 0x485e40
push esi
call dword [sym.imp.MSVCR90.dll__mbsstr]
add esp, 8
test eax, eax
je 0x43bb18
sub eax, esi
js 0x43bb18
lea ecx, [esp + 0x2c]
call fcn.00401df0
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x50]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
jmp 0x439449
lea ecx, [esp + 0x2c]
mov byte [esp + 0x238c], 0x41
call fcn.00401df0
push str.ATCHKLOCK_r
lea ecx, [esp + 0x1c]
call fcn.00403470
mov eax, dword [esp + 0x18]
mov ecx, dword [eax - 0xc]
push 0x2710
push ecx
push eax
mov eax, dword [esp + 0x23a0]
push eax
mov byte [esp + 0x239c], 0x45
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
test eax, eax
jne 0x43bd78
mov esi, dword [esp + 0x28]
test esi, esi
je 0x43bd78
lea ecx, [esp + 0x40]
call fcn.004023a0
lea edx, [esp + 0x178]
mov bl, 0x46
push edx
lea ecx, [esp + 0x78]
mov byte [esp + 0x2390], bl
mov byte [esp + esi + 0x17c], 0
call fcn.00402040
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0x2390], 0x47
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x43bbf8
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
push 0
push str.CHKLOCK:
lea ecx, [esp + 0x48]
mov dword [esp + 0x70], 0
call fcn.00402000
test eax, eax
jge 0x43bca6
lea ecx, [esp + 0x2394]
call fcn.00455f30
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0x34]
call eax
lea ecx, [esp + 0x40]
call fcn.00401df0
lea ecx, [esp + 0x18]
call fcn.00401df0
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x50]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
jmp 0x43b791
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x68]
push edx
lea eax, [ecx + eax*2]
push str.CHKLOCK:_d
push eax
call ebp
add esp, 0xc
cmp dword [esp + 0x68], 1
jne 0x43bd67
lea ecx, [esp + 0x2394]
call fcn.00455f30
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea ecx, [esp + 0x40]
call fcn.00401df0
lea ecx, [esp + 0x18]
call fcn.00401df0
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x50]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
lea ecx, [esp + 0x2394]
call fcn.0040f350
mov eax, 0x17
jmp 0x43c68b
lea ecx, [esp + 0x40]
mov byte [esp + 0x238c], 0x45
call fcn.00401df0
mov eax, dword [esp + 0x2394]
push 0x2710
push 0xc
push str.ATCHKIDLE__r
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
add esp, 0x1c
test eax, eax
jne 0x43c04d
mov esi, dword [esp + 0x28]
test esi, esi
je 0x43c04d
lea ecx, [esp + 0x40]
call fcn.004023a0
lea edx, [esp + 0x178]
mov bl, 0x48
push edx
lea ecx, [esp + 0x78]
mov byte [esp + 0x2390], bl
mov byte [esp + esi + 0x17c], 0
call fcn.00402040
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0x2390], 0x49
call fcn.00403430
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0x78]
mov byte [esp + 0x238c], bl
cmp eax, ecx
je 0x43be2f
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
lea ecx, [esp + 0x40]
call fcn.00408030
push 0
push str.CHKIDLE:
lea ecx, [esp + 0x48]
call fcn.00402000
test eax, eax
jge 0x43bf01
lea ecx, [esp + 0x2394]
call fcn.00455f30
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0x34]
call eax
lea ecx, [esp + 0x40]
call fcn.00401df0
lea ecx, [esp + 0x18]
call fcn.00401df0
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x50]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
mov eax, dword [esp + 0x2394]
mov dword [esp + 0x238c], 0xffffffff
test eax, eax
je 0x43bef7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 0xe
jmp 0x43c68b
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x54]
push edx
lea eax, [ecx + eax*2]
push str.CHKIDLE:_d
push eax
call ebp
add esp, 0xc
cmp dword [esp + 0x54], 0
jne 0x43bfc2
lea ecx, [esp + 0x2394]
call fcn.00455f30
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea ecx, [esp + 0x40]
call fcn.00401df0
lea ecx, [esp + 0x18]
call fcn.00401df0
lea ecx, [esp + 0x14]
call fcn.00401df0
lea ecx, [esp + 0x50]
call fcn.00401df0
lea ecx, [esp + 0x1c]
call fcn.00401df0
lea ecx, [esp + 0x20]
call fcn.00401df0
lea ecx, [esp + 0x3c]
call fcn.00401df0
lea ecx, [esp + 0x48]
call fcn.00401df0
lea ecx, [esp + 0x4c]
call fcn.00401df0
lea ecx, [esp + 0x38]
call fcn.00401df0
lea ecx, [esp + 0x34]
call fcn.00401df0
lea ecx, [esp + 0x30]
call fcn.00401df0
lea ecx, [esp + 0x24]
call fcn.00401df0
lea ecx, [esp + 0x2394]
call fcn.0040f350
mov eax, 0xe
jmp 0x43c68b
push str.ATPMODE5_r
lea ecx, [esp + 0x20]
call fcn.004032c0
mov edi, dword [esp + 0x1c]
mov eax, dword [edi - 0xc]
push 0x2710
push eax
mov eax, dword [esp + 0x239c]
push edi
push eax
call fcn.00424e90
push 3
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x239c]
push 0x2710
lea edx, [esp + 0x34]
push edx
push 0x2000
lea eax, [esp + 0x18c]
push eax
push ecx
call fcn.00424f40
push 3
lea edx, [esp + 0x78]
push edx
mov edx, dword [esp + 0x23b8]
push 0x2710
lea eax, [esp + 0x50]
push eax
push 0x2000
lea ecx, [esp + 0x1a8]
push ecx
push edx
call fcn.00424f40
add esp, 0x38
lea ecx, [esp + 0x40]
call fcn.00401df0
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0x41
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c075
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
test eax, eax
jne 0x43c08a
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0x3e
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c0ba
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x50]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c0e2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
mov byte [esp + 0x238c], 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c106
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 7
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c12e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c156
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c17e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c1a6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c1ce
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c1f6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c21e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c246
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
mov dword [esp + 0x238c], 0xffffffff
test eax, eax
je 0x43c264
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
xor eax, eax
jmp 0x43c68b
cmp eax, 1
jne 0x43c4dc
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x178]
push str.ERROR:
push ecx
mov byte [esp + eax + 0x180], 0
call dword [sym.imp.MSVCR90.dll_strstr]
add esp, 8
push eax
lea ecx, [esp + 0x30]
call fcn.00403470
push str.CME_ERROR:_r_n
push str.CME_ERROR:_r_n
lea ecx, [esp + 0x34]
mov byte [esp + 0x2394], 0xb
call fcn.0042bef0
mov ecx, eax
call fcn.00429c30
mov edx, dword [esp + 0x2c]
push edx
call ebp
add esp, 4
cmp eax, 0xa
mov eax, dword [esp + 0x2394]
jne 0x43c312
test eax, eax
jne 0x43c2e6
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
push str.CDeviceManager::ModemIdentify
push 0x47edf8
call fcn.00403120
push 2
push 0x47f460
call fcn.00403120
mov eax, dword [esp + 0x3c]
jmp 0x4392be
test eax, eax
jne 0x43c320
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 9
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c350
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c374
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 7
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c39c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c3c4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c3ec
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c414
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c43c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c464
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c48c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c4b4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
test eax, eax
mov dword [esp + 0x238c], 0xffffffff
je 0x43c4d2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 2
jmp 0x43c68b
cmp eax, 0x8007048f
mov eax, dword [esp + 0x2394]
je 0x439478
test eax, eax
jne 0x43c4fc
push 0x80004003
call fcn.004650f0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push eax
call edx
lea eax, [esi - 0x10]
mov byte [esp + 0x238c], 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c528
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 7
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c550
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c578
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x48]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c5a0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c5c8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c5f0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c618
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c640
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
mov byte [esp + 0x238c], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c668
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x2394]
mov dword [esp + 0x238c], 0xffffffff
test eax, eax
je 0x43c686
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, 0xa
mov ecx, dword [esp + 0x2384]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x236c]
xor ecx, esp
call fcn.00473c8a
add esp, 0x237c
ret